Informations sur les patterns à appliquer

Cet exemple contient 8 patterns. La plupart des ces patterns ont un nom et des fonctions similaires aux patterns utilisés dans l'industrie.* Certains patterns, appelés micropatterns, sont utilisés par d'autres patterns à granularité plus élevée.

Pattern de fabrique abstraite

(Cinq paramètres, cinq dépendances de paramètre, réutilisation d'un autre pattern)

Le pattern de fabrique abstraite est basé sur le pattern de fabrique abstraite classique. Il réutilise le pattern d'interface et, par conséquent, démontre les délégations de dépendance dans le cadre de la délégation de comportement au pattern d'interface. Il s'agit d'une implémentation dégénérée du pattern de fabrique abstraite, car tous les produits concrets implémentent toutes les interfaces de produits abstraites liées. Cela illustre l'utilisation de dépendances de paramètre pour préserver la sémantique d'un pattern au fur et à mesure que de nouveaux arguments sont liés au pattern. De la même manière que le pattern singleton utilise d'autres éléments que les collaborations pour représenter les instances de pattern, ce pattern utilise des packages. Les instances de ce pattern sont des packages.

Pattern de délégation

(Deux paramètres, une dépendance de paramètre, réutilisation de trois patterns)

Le pattern de délégation a deux paramètres : un paramètre qui représente le délégataire et un autre qui représente le délégué dans le pattern de délégation. Le délégataire délègue les opérations définies dans l'interface du délégué et implémentées dans une instance du type de délégué. Ce pattern démontre l'utilisation de filtres de mappage de délégation afin de personnaliser le nom des mots clé liés aux instances de réutilisation du pattern de liste de mots clé. Cette personnalisation n'est pas obligatoire pour fournir une implémentation efficace du pattern de délégation, mais elle a été ajoutée dans cet exemple pour illustrer l'utilisation de filtres de mappage de délégation.

Pattern d'association dirigée

(Six paramètres, cinq dépendances de paramètre, un micropattern)

Le pattern d'association dirigée est un autre pattern primitif autonome. Il s'agit d'un micropattern utilisé par d'autres patterns à granularité plus élevée. Le pattern d'association dirigée comporte deux paramètres principaux qui définissent le contexte d'une association dirigée. Il comprend cinq autres paramètres supplémentaires qui permettent de préciser l'association, en indiquant le type d'association, les noms de rôles et les multiplicités. Ce pattern est réutilisé par l'exemple de pattern de délégation et constitue une illustration d'un pattern qui comprend moins de types de paramètres communs. Des chaînes littérales, des entiers et des énumérations de pattern sont utilisés pour la définition de ce pattern. Le code de pattern figurant dans cet exemple pour la gestion des chaînes littérales et des énumérations est précieux pour la création de patterns présentant des types de paramètres similaires.

Pattern d'implémentation

(Deux paramètres, une dépendance de paramètre, un micropattern)

Le pattern d'implémentation est un pattern primitif autonome qui n'utilise aucun autre pattren pour son implémentation. Il s'agit d'un pattern très simple qui vise à s'assurer qu'une relation d'implémentation UML existe entre un argument d'implémentation et un argument d'interface.

Pattern d'interface

(Deux paramètres, une dépendance de paramètre, réutilisation d'un autre pattern)

Le pattern d'interface, réutilisé par certains autres exemples de pattern, réutilise lui-même un autre pattern pour son implémentation. Le pattern d'implémentation est un pattern primitif (micropattern) utilisé par le pattern d'interface pour s'assurer que l'argument d'implémentation implémente les arguments d'interface. Le pattren d'interface comporte deux paramètres : un qui représente l'interface et un qui représente l'implémentation. Il comprend un mappage de délégation de base reposant sur les utilisations de définition de pattern et les délégations de dépendance de pattern. Il s'agit d'un pattern basique mais fonctionnel, également abordé dans d'autres parties de la documentation sur les patterns. Ce pattern illustre également l'utilisation combinée de délégations de patterns et de code personnalisé pour implémenter les méthodes de mise à jour des dépendances du pattern. Ce pattern d'implémentation est réutilisé pour assurer la relation d'implémentation, puis le code personnalisé de la méthode de mise à jour permet de s'assurer que l'implémentation met en oeuvre toutes les opérations définies sur les arguments de l'interface.

Pattern de liste de mots clés

(Deux paramètres, une dépendance de paramètre, un micropattern)

Le pattren de liste de mots clé est un pattern primitif autonome qui n'utilise aucun autre pattren pour son implémentation. Il illustre l'utilisation d'une chaîne littérale UML en tant que paramètre, et l'utilisation d'un métatype UML abstrait en tant que type de paramètre. Ce pattern comprend également une fonctionnalité permettant de s'assurer que les éléments sémantiques du pattern (les arguments) ne sont pas liés et que les instances du pattern ne sont pas appliquées. Le pattern de liste de mots clé peut être instancié à partir de la vue Explorateur de patterns, mais il est préférable de le réutiliser pour d'autres patterns via le mécanisme de délégation de patterns.

Pattern singleton

(aucun paramètre)

Le pattern singleton est basé sur le pattern singleton classique. C'est un exemple de pattern sans paramètre. Il contient un paramètre implicite, qui peut être considéré comme l'instance du pattern. Ce pattern représente ses instances de pattern en tant que classes, et non sous forme de collaborations (comme c'est généralement le cas). Vous pouvez par exemple effectuer un glisser-déposer de ce pattern à partir de la vue Explorateur de patterns vers une classe qui doit rester un singleton. Si vous déposez ce pattern sur la surface d'un diagramme (dans un package), vous obtenez une nouvelle instance de singleton, et une nouvelle classe est créée pour représenter cette instance.

Pattern de stratégie

(Trois paramètres, deux dépendances de paramètre, réutilisation de deux patterns)

Le pattern de stratégie est basé sur le pattern de stratégie classique. Il réutilise les exemples de pattern d'interface et de liste de mots clé et contient un exemple de mappage de délégation de paramètres. Il contient trois paramètres : le premier représente l'interface de stratégie, le deuxième représente la stratégie concrète et le troisième représente le contexte de la stratégie. Pour démontrer la réutilisation du pattern de liste de mots clé, le pattern s'assure que le mot clé <<Strategy>> est présent dans l'argument du paramètre de l'interface de stratégie. Ce pattern d'interface est réutilisé pour garantir que l'interface de stratégie est implémentée par les arguments liés du paramètre de stratégie concrète.

* Design Patterns: Elements of Reusable Object-Oriented Software, Gamma, Helm, Johnson and Vlissides (Addison-Wesley, 1995) copyright (c) 1995 by Addison-Wesley Publishing Company, Inc. All rights reserved.

Rubrique parent : Patterns à appliquer

Vos commentaires