|
Articoli -
Ingegneria del software
|
|
Scritto da RedBaron85
|
|
Sabato 30 Gennaio 2010 15:07 |
Design Pattern - State
Il Design Pattern State è un Design Pattern comportamentale così descritto:
Vogliamo che un oggetto possa cambiare il suo comportamento (come un cambio di classe) se il suo stato cambia.
Utile per oggetti che possono cambiare stato a run-time e a volte tale cambiamento di stato implica (o dovrebbe implicare) un cambiamento di comportamento.
Si crea un'unica interfaccia di riferimento per i client invocanti, detta Context.
Si crea poi un'interfaccia State. Ogni ramo condizionale viene quindi inserito in una classe separata, per cui da State discendono delle classi ConcreteState (più di una, in genere: una per ogni possibile stato-comportamento dell'oggetto).
La logica del cambiamento di stato risiede solo nella classe Context, così -tra le altre cose- si evitano stati inconsistenti (tutte le classi esterne, del sistema, devono rifarsi a Context, non possono modificare stati o istanziare nuove classi in maniera diretta).
Ovviamente, vista la creazione dei ConcreteState, si ha un aumento del numero delle classi.
|
|
Ultimo aggiornamento Domenica 22 Gennaio 2012 15:25 |
Copyright © 2012 RedBaron85.com: Informatica, CG 2D e 3D, Blender, Python, Java 2D e 3D, 3D Studio e altro ancora!. Tutti i diritti riservati.