I design pattern in Java sono soluzioni riutilizzabili a problemi ricorrenti nella progettazione del software orientato agli oggetti. Non sono codice pronto all’uso, ma modelli concettuali applicabili a diversi contesti.
CATEGORIE PRINCIPALI
Creational patterns
Gestiscono la creazione degli oggetti.
- Singleton : Garantisce un’unica istanza di una classe.
- Factory Method : Delega la creazione degli oggetti alle sottoclassi.
- Abstract Factory : Crea famiglie di oggetti correlati.
- Builder : Costruisce oggetti complessi passo dopo passo.
- Prototype : Crea nuovi oggetti clonando istanze esistenti.
Structural patterns
Gestiscono la composizione delle classi e degli oggetti.
- Adapter : Rende compatibili interfacce diverse.
- Decorator : Aggiunge dinamicamente nuove funzionalità.
- Facade : Fornisce un’interfaccia semplificata a un sistema complesso.
- Composite : Tratta oggetti singoli e composizioni in modo uniforme.
- Proxy : Controlla l’accesso a un oggetto.
Behavioral patterns
Gestiscono la comunicazione e il comportamento tra oggetti.
- Observer : Notifica i cambiamenti di stato agli osservatori.
- Strategy : Incapsula algoritmi intercambiabili.
- Command : Incapsula una richiesta come oggetto.
- State : Cambia il comportamento in base allo stato interno.
- Template Method : Definisce lo scheletro di un algoritmo.