CREATIONAL
Factory Method
Definire un'interfaccia per creare un oggetto, ma lasciare che le sottoclassi decidano quale classe istanziare.
Esempi di Codice
PROBLEMA: Codice Rigido con Classi Concrete
Quando il codice dipende direttamente da classi concrete, diventa difficile estendere.
JAVASCRIPT
Loading...
SOLUZIONE: Factory Method - Estensibilità
Factory Method permette alle sottoclassi di decidere quale classe istanziare.
JAVASCRIPT
Loading...
Esempio Pratico: Sistema di Export Multi-Formato
Export di report in formati diversi (PDF, Excel, CSV) usando Factory Method.
JAVASCRIPT
Loading...
Confronto: Switch vs Factory Method
Differenza tra codice procedurale e pattern Factory Method.
JAVASCRIPT
Loading...
Esempi nel Mondo Reale
Framework UI - Creazione di componenti diversi per piattaforme diverse (web, mobile, desktop)
Sistema di logging - Diversi logger per console, file, database, cloud
Parser di documenti - Factory per creare parser XML, JSON, CSV in base al tipo di file
Connessioni database - Factory per creare connessioni MySQL, PostgreSQL, MongoDB
Gestione pagamenti - Factory per creare processori Stripe, PayPal, Apple Pay
Quando Usarlo
Quando non sai in anticipo quali tipi di oggetti dovrai creare
Quando vuoi delegare la logica di creazione alle sottoclassi
Quando vuoi fornire estensibilità ai tuoi utenti/library
Quando vuoi localizzare la conoscenza delle classi concrete
Quando NON Usarlo
Quando hai solo un tipo di oggetto da creare
Quando la gerarchia di classi diventa troppo complessa
Quando Simple Factory Pattern è sufficiente
Pattern Correlati