BEHAVIORAL
Template Method
Definire lo scheletro di un algoritmo in un metodo, delegando alcuni passi alle sottoclassi. Template Method permette alle sottoclassi di ridefinire certi passi di un algoritmo senza cambiarne la struttura.
Esempi di Codice
Template Method per Data Mining
Algoritmo di analisi dati per diversi formati (CSV, JSON, XML).
JAVASCRIPT
Loading...
Esempi nel Mondo Reale
Frameworks (Spring, Angular lifecycle hooks)
Build tools (compile, test, package steps)
Game loops (initialize, update, render)
HTTP request handling (authenticate, validate, process, respond)
Test frameworks (setup, execute, teardown)
Quando Usarlo
Quando hai algoritmi simili con variazioni in alcuni passi
Quando vuoi evitare duplicazione di codice comune
Quando vuoi controllare i punti di estensione
Quando le sottoclassi devono sovrascrivere solo alcune parti
Quando NON Usarlo
Quando l'algoritmo è completamente diverso per ogni caso
Quando serve più flessibilità di quella offerta da ereditarietà
Quando preferisci composizione a ereditarietà
Pattern Correlati