4 ottobre 2015

Design Pattern

Un design pattern è una descrizione o un modello da applicare per risolvere un problema che può presentarsi in diverse situazioni durante la progettazione e lo sviluppo del software. Esso è una soluzione progettuale generale a un problema ricorrente che permette quindi il riuso di buona parte del lavoro, svolto nell'ambito di un progetto, all'interno di un’altro. In particolare usare un pattern significa utilizzare un’idea che è stata già dimostrata. Alla base di un design pattern c’è il concetto di riuso che permette di risparmiare lavoro riutilizzando parte di quello che è già stato svolto da altri. Quindi il riuso permette di utilizzare componenti esistenti senza il bisogno di doverle sviluppare dall'inizio. Inoltre è ridotta la parte di testing e di manutenzione risparmiando denaro poiché altri hanno risolto il problema in passato. Riducendo i tempi di sviluppo si possono sfruttare subito nuove opportunità di mercato aumentando i profitti. Questo concetto è stato introdotto da Christopher Alexander descrivendo un suo primo pattern Cottage per teenager che descrive come un’architettura può aiutare una famiglia con un figlio adolescente. 

Un pattern è costituito da un nome, dalla descrizione del problema al quale applicare il pattern, da una soluzione che rappresenta il problema come astratto e il modo con cui risolverlo, infine da conseguenze che racchiudono i risultati e i vincoli derivati dall'applicazione del pattern. I pattern possono essere classificati in pattern creazionali, strutturali e comportamentali. Ci sono tipi di pattern che non operano a livello di design del sistema, quindi non possono essere definiti propriamente design pattern e sono quelli architetturali. Essi descrivono uno schema di base per determinare l’organizzazione strutturale di un’applicazione software. Tra i tanti pattern architetturali c'è il Model-View-Controller di cui parleremo nel prossimo articolo.


Nessun commento:

Posta un commento