(Cinque parametri, cinque dipendenze del parametro, riutilizza un pattern)
Il pattern factory astratto si basa sul pattern factory astratto noto. Riutilizza il pattern interfaccia e, pertanto, mostra i delegati di dipendenza nel corso della delega del funzionamento al pattern interfaccia. Si tratta di una implementazione degenerata del pattern factory astratto poiché tutti i prodotti concreti implementano tutte le interfacce del prodotto astratto associate. Esemplifica l'uso delle dipendenze del parametro per garantire la semantica di un pattern quando argomenti aggiuntivi vengono associati al pattern. Proprio come il pattern singleton che utilizza elementi diversi dalle collaborazioni per rappresentare le istanze di pattern, questo pattern utilizza i package. Le istanze di questo pattern sono package.
(Due parametri, una dipendenza del parametro, riutilizza tre pattern)
Il pattern delega ha due parametri: uno rappresenta colui che delega, l'altro il delegato nel pattern delega. L'utente che delega delega appunto le operazioni definite nell'interfaccia del delegato e implementate su un'istanza del tipo di delegato. Questo pattern mostra l'uso dei filtri di associazione di delegati per personalizzare il nome delle parole chiave di cui è stato eseguito il bind alle istanze di riutilizzo del pattern elenco di parole chiave. Questa personalizzazione del nome non è richiesta per fornire una utile implementazione del pattern delega, ma è stata aggiunta a questo esempio per mostrare l'uso dei filtri di associazione di delegati.
(Sei parametri, cinque dipendenze del parametro, un micropattern)
Il pattern associazione diretta è un altro pattern primitivo indipendente, un micropattern che viene utilizzato da altri pattern che presentano una maggiore granularità. Questo pattern ha due parametri primari che impostano il contesto per un'associazione diretta. Presenta, inoltre, cinque altri parametri periferici che consentono di definire l'associazione configurando il tipo di associazione, i nomi dei ruoli e le molteplicità. Questo pattern viene riutilizzato dal pattern delega di esempio ed è uno di quei pattern di esempio che include tipi di parametri meno comuni. Nella definizione di questo pattern si utilizzano stringhe letterali, interi ed enumerazioni di pattern. Il codice del pattern che si trova in questo esempio per gestire questi letterali e queste enumerazioni è prezioso per apprendere come creare pattern che hanno tipi di parametri simili.
(Due parametri, una dipendenza del parametro, un micropattern)
Il pattern implementazione è un pattern primitivo indipendente, che non utilizza altri pattern per l'implementazione. Si tratta di un pattern molto semplice che garantisce una relazione di implementazione UML tra un argomento di implementazione e un argomento di interfaccia.
(Due parametri, una dipendenza del parametro, riutilizza un pattern)
Il pattern interfaccia, che viene utilizzato da alcuni pattern di esempio, riutilizza nella propria implementazione un pattern. Il pattern di implementazione è un pattern primitivo (noto anche come micropattern) e viene utilizzato dal pattern interfaccia per assicurare che l'argomento di implementazione implementi gli argomenti di interfaccia. Il pattern interfaccia ha due parametri: uno rappresenta l'interfaccia, l'altro l'implementazione. Questo pattern include un esempio di associazione di delegati di base che utilizza gli utilizzi di definizione di pattern e i delegati di dipendenza dei pattern. Si tratta di un pattern molto semplice ma funzionale, che viene menzionato anche in altre parti della documentazione relativa ai pattern. Questo pattern mostra anche la combinazione dell'uso sia dei delegati del pattern che del codice personalizzato per implementare i metodi di aggiornamento delle dipendenze di un pattern. Il pattern di implementazione viene riutilizzato per garantire la relazione di implementazione, mentre il codice personalizzato del metodo di aggiornamento viene utilizzato per assicurare che l'implementazione implementi tutte le operazioni definite negli argomenti di interfaccia.
(Due parametri, una dipendenza del parametro, un micropattern)
Il pattern elenco di parole chiave è un pattern primitivo indipendente, che non utilizza altri pattern nella propria implementazione. Inoltre, illustra l'uso di una stringa letterale UML come tipo di parametro e l'uso di un metatipo UML astratto come tipo di parametro. Questo pattern include anche la funzionalità per garantire in maniera corretta la semantica dei pattern quando viene annullato il bind degli argomenti e quando viene annullata l'applicazione di istanze del pattern. È possibile creare un'istanza di questo pattern dalla vista Esplora pattern che si trova alla destra del pattern; tuttavia, è particolarmente adatto per il riutilizzo da parte di altri pattern attraverso il meccanismo di delegazione del pattern.
(Zero parametri)
Il pattern singleton si basa sul pattern singleton noto. È un esempio di pattern senza parametri. Ha, di fatto, un parametro implicito che può essere considerato come l'istanza del pattern. Questo pattern rappresenta le proprie istanze di pattern come classi anziché come collaborazioni. Un uso appropriato di questo pattern consiste nel trascinarlo dalla vista Esplora pattern a una classe, la quale deve essere necessariamente un singleton. Quando si trascina questo pattern sulla superficie del diagramma (in un package) si ottiene una nuova istanza singleton, quindi la creazione di una nuova classe per rappresentare questa istanza.
(Tre parametri, due dipendenze del parametro, riutilizza due pattern)
Il pattern strategia si basa sul pattern strategia noto. Riutilizza i pattern di esempio elenco di parole chiave e interfaccia e contiene un esempio di associazione di delegati di parametri. Ha tre parametri: uno per rappresentare l'interfaccia della strategia, un secondo per rappresentare la strategia concreta e un terzo per rappresentare il contesto della strategia stessa. Per mostrare il riutilizzo del pattern elenco di parole chiave, il pattern assicura che la parola chiave <<Strategy>> sia presente nell'argomento del parametro dell'interfaccia della strategia. Il pattern interfaccia viene riutilizzato per assicurare che l'interfaccia della strategia venga implementata dagli argomenti associati del parametro di strategia concreta.
* Design Patterns: Elements of Reusable Object-Oriented Software, Gamma, Helm, Johnson and Vlissides (Addison-Wesley, 1995) copyright (c) 1995 di Addison-Wesley Publishing Company, Inc. Tutti i diritti riservati.