Pattern creazionali
- Abstract factory: Creo oggetto senza specificare la classe completa
- Builder: Stesso processo di costruzione varie rappresentazioni
- Factory Method: La costruzione segue un'interfaccia, le sottoclassi decidono cosa istanziare
- Interpreter: Dato un linguaggio rappresenta una grammatica per rappresentarne le istanze
- Iterator: Astrae il concetto di iterazione fra oggetti
- Strategy: Usare gli stessi metodi cambiando "strategia" dinamicamente
- Adapter: Converte un'interfacciain una che si aspetta il client, ad esempio struttando l'overloading di Java
- Decorator: Estende dinamicamente il comportamento di un oggetto, ad esempio sfruttando l'override di Java
- Facade: Definisce l'interfaccia ad alto livello per usare più facilmente il subsystem
- Composite: Definire oggetti e oggetti composti, da trattare uniformemente con gli stessi metodi
- Bridge: Separa l'astrazione e l'implementazione di un oggetto in modo che varino indipendentemente