Python Design Patterns - Introduzione
I design pattern vengono utilizzati per rappresentare il pattern utilizzato dagli sviluppatori per creare software o applicazioni web. Questi modelli vengono selezionati in base all'analisi dei requisiti. I modelli descrivono la soluzione al problema, quando e dove applicare la soluzione e le conseguenze dell'implementazione.
Struttura di un modello di progettazione
La documentazione del design pattern viene mantenuta in un modo che si concentra maggiormente sulla tecnologia utilizzata e in quali modi. Il diagramma seguente spiega la struttura di base della documentazione del modello di progettazione.
Nome modello
Descrive il modello in modo breve ed efficace.
Intento / Motivo
Descrive cosa fa il modello.
Applicabilità
Descrive l'elenco delle situazioni in cui il modello è applicabile.
Partecipanti e conseguenze
I partecipanti includono classi e oggetti che partecipano al modello di progettazione con un elenco di conseguenze che esistono con il modello.
Perché Python?
Python è un linguaggio di scripting open source. Dispone di librerie che supportano una varietà di modelli di progettazione. La sintassi di python è facile da capire e utilizza parole chiave inglesi.
Python fornisce supporto per l'elenco dei modelli di progettazione menzionati di seguito. Questi modelli di progettazione verranno utilizzati in questo tutorial:
- Modello controller vista modello
 - Modello singleton
 - Modello di fabbrica
 - Modello di generatore
 - Modello prototipo
 - Modello di facciata
 - Modello di comando
 - Modello adattatore
 - Modello prototipo
 - Decoratore Pattern
 - Pattern proxy
 - Schema della catena di responsabilità
 - Pattern osservatore
 - Modello di stato
 - Modello di strategia
 - Modello modello
 - Modello Flyweight
 - Modello astratto di fabbrica
 - Pattern orientato agli oggetti
 
Vantaggi dell'utilizzo del modello di progettazione
Di seguito sono riportati i diversi vantaggi del design pattern:
I pattern forniscono agli sviluppatori una selezione di soluzioni collaudate per i problemi specificati.
Tutti i modelli di design sono indipendenti dal linguaggio.
I modelli aiutano a raggiungere la comunicazione e mantenere una buona documentazione.
Include un record di realizzazione per ridurre qualsiasi rischio tecnico per il progetto.
I modelli di progettazione sono altamente flessibili da usare e facili da capire.
