pattern
Indices. inglese (propr., modello, campione) usato in italiano come sm.
1) Nella psicologia della percezione, indica una configurazione di stimoli che si presentano a costituire un'unità percettiva. Il significato è quindi simile a quello di Gestalt o forma, ma in quest'ultimo termine è maggiormente messo l'accento sull'aspetto della strutturazione.
2) In informatica, con l'espressione pattern recognition si indica un processo di identificazione (riconoscimento) della forma specifica di un segnale o l'assegnamento della probabilità della sua possibile presenza. Per esempio, il riconoscimento di forme visuali (visual pattern recognition) coinvolge l'identificazione di forme bidimensionali su schermi a matrici di pixel. L'identificazione di una o più forme viene eseguita analiticamente o, più frequentemente, per confronto mediante l'utilizzo di modelli. La pattern recognition utilizza le tecniche di elaborazione numerica dei segnali di sviluppo delle immagini e dell'intelligenza artificiale. Nei programmi di grafica indica invece un disegno ripetitivo utilizzato per riempire (campire) un'area o la superficie di un solido. Il termine pattern si è diffuso nel campo dell'ingegneria del software e, in particolare, in quello orientato agli oggetti, per indicare un cosiddetto design pattern (pattern di progetto). Questo termine si rifà alle teorie dei pattern sviluppati in campo edile dall'architetto Christopher Alexander, secondo cui le costruzioni valide sono quelle che rappresentano istanze di forme generali del progettare, non legate a nessuna tecnica specifica, ma che permettono un equilibrio fra i ruoli assegnati alle diverse componenti della costruzione. Tale concetto è stato utilizzato nel 1995 quando venne pubblicato Design Pattern di Erich Gamma, Richard Helm, Ralph Johnson e John Vlissides. Ai quattro venne collettivamente dato il nomignolo di "Banda dei Quattro", tanto che "GoF" (Gang of Four) è ormai un acronimo universalmente riconosciuto. La GoF individua alcune configurazioni tipiche di classi e le collaborazioni fra di esse, in cui ognuna assume un ben determinato ruolo. I pattern di progetto emergono dall'esperienza e dall'osservazione ripetuta di soluzioni con caratteristiche comuni, benché sviluppate in contesti differenti e riferite a problemi diversi. Per esempio, il cosiddetto pattern adapter fornisce una soluzione adattabile a tutte le situazioni in cui un programmatore vuole riutilizzare un'implementazione già a disposizione, adeguandola al modo in cui il resto del sistema è in grado di richiamarla. Il pattern singleton descrive, invece, una soluzione uniforme per tutte le situazioni in cui si vuole garantire che esista una sola istanza per una classe.