Design pattern: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Pattern Strutturali: vedi discussione
Pattern Comportamentali: vedi discussione
Riga 58:
==Pattern Comportamentali==
* [[Chain of responsibility pattern|Chain of Responsibility]]
* Il [[Command pattern|Command]] permette di isolare la porzione di codice che effettua un'azione dal codice che ne richiede l'esecuzione.
* [[Event listener|Event Listener]]
* [[Hierarchical visitor pattern|Hierarchical Visitor]]
* [[Interpreter pattern|Interpreter]]
* L'[[Iterator (design pattern)|Iterator]] risolve diversi problemi connessi all'accesso e alla navigazione attraverso gli elementi di una struttura dati, senza esporre i dettagli dell'implementazione e della struttura interna del contenitore.
* [[Iterator (design pattern)|Iterator]]
* [[Mediator pattern|Mediator]]
* Il design pattern [[Memento pattern|Memento]] è l'operazione di estrarre lo stato interno di un oggetto, senza violarne l’incapsulazione, e memorizzarlo per poterlo ripristinare in un momento successivo.
* [[Memento pattern|Memento]]
* L'[[Observer pattern|Observer]] definisce una dipendenza uno a molti fra oggetti diversi, in maniera tale che se un oggetto cambia il suo stato, tutti gli oggetti dipendenti vengono notificati del cambiamento avvenuto e possono aggiornarsi.
* [[Observer pattern|Observer]]
* [[Single-serving visitor pattern|Single-serving Visitor]]
* [[State pattern|State]]
* Il design pattern [[Strategy pattern|Strategy]] è utile in quelle situazioni dove è necessario modificare dinamicamente gli algoritmi utilizzati da un'applicazione.
* [[Strategy pattern|Strategy]]
* Il [[Template method]] permette di definire la struttura di un algoritmo lasciando alle sottoclassi il compito di implementarne alcuni passi come preferiscono.
* [[Template method]]
* Il [[Visitor]] permette di separare un algoritmo dalla struttura di oggetti composti a cui è applicato, in modo da poter aggiungere nuovi comportamenti senza dover modificare la struttura stessa.
* [[Visitor]]
 
==Pattern di metodologia==