Post

State

In Design Patterns on marzo 27, 2010 by poyblog Messo il tag: ,

Intento:

Permettere ad un oggetto di cambiare il proprio comportamento quando cambia il suo stato interno. L’oggetto pare che cambi la propria classe,

Applicabilità:

Il pattern State è da utilizzare nei seguenti casi:

  • Il comportamento di un oggetto dipende dal proprio stato e l’oggetto stesso deve cambiale il proprio comportamento in base allo stato durante l’esecuzione.
  • Le operazioni da fare hanno istruzioni condizionali multiple e molto corpose che dipendono dallo stato dell’oggetto. Il pattern State inserisce ogni istruzione in una classe separata.

Partecipanti:

  • Context → definisce una interfaccia per i Clients e mantiene una istanza di una sottoclasse di tipo ConcreteState la quale definisce lo stato corrente.
  • State → definisce una interfaccia per incapsulare il comportamento associato ad un particolare stato di Context
  • ConcreteState subclasses → ogni sottoclasse implementa uno specifico comportamento associato ad uno stato del contesto.

Conseguenze:

  • Con il pattern State come prima conseguenza si ha che vengono localizzati i comportamenti specifici per ogni stato e vengono suddivisi i comportamenti in riferimento agli stati. Infatti tutti i comportamenti associati ad uno specifico stato vengono inseriti tutti all’interno di un oggetto
  • Le transazioni di stato divengono esplicite
  • Lo stato degli oggetti può essere condiviso

Lascia un Commento

Fill in your details below or click an icon to log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Log Out / Modifica )

Foto Twitter

You are commenting using your Twitter account. Log Out / Modifica )

Foto di Facebook

You are commenting using your Facebook account. Log Out / Modifica )

Connecting to %s

Iscriviti

Get every new post delivered to your Inbox.