Modèles de conception

Design Patterns (DP). Ou "patron" n1Comme les patrons dans la conception de mode, qui servent à détourer des modèles. de conception.

Simplifier une création d'objet en partant d'un modèle à copier puis éventuellement modifier.

Les modèles de conception sont généralement définis par :

On peut caractériser les modèles en :

Par définition, un DP se limite au niveau d'une solution de conception et n'a pas d'implémentation déterminée (cette dernière dépendra du langage utilisé, des contraintes de la plate-forme, etc.). Toutefois, on trouve souvent un exemple d'implémentation dans des descriptions de DP.

Des exemples de modèles de conception sont :

Source Type Nom original Description
GoF Structuraux Adapter Adaptateur : fournir une interface différente de l'originelle
Bridge Pont entre abstraction et implémentation, afin de les rendre indépendants
Prototype Création d'objet à partir de modèle
Composite
Decorator Décorateur : ajouter une fonctionnalité à un objet sans le modifier
Facade Façade
Flyweight Poids mouche
Proxy Délégué :
Créateurs Abstract factory : Fabrique abstraite : créer sans connaître l'implémentation
Builder Constructeur
Factory method Méthode de fabrique
Prototype
Singleton Garantir une instance unique.
Comportementaux Chain of responsability Chaine de responsabilités : traitement ou délégation du traitement à une hiérarchie de responsables
Command Commande ou Action : Encapsulation d'un comportement, réutilisation dans divers contextes.
Interpreter Interpréteur
Iterator Itérateur
Mediator Médiateur
Memento Copie
Observer Observateur
State Etat : Chaque classe d'état répond à un événement par l'état suivant
Strategy Stratégie : Algorithme variable
Template method Modèle de méthode : comportement et services commun pour un modèle d'objets (framework)
Visitor Visiteur : traitement dépendant d'un type sans dépendance statique à ce type
Concurrence Balking
Suspension gardée
Planificateur
Verrou lecture écriture
Verrouillage doublement vérifié
Désactivation requêtes de tâche pendant exécution de tâche
Temps réel Tâche planifiée
J2EE DAO Encapulser l'accès aux données
Value object Objet valeur. Faire voyager un état depuis un objet distant
Session facade
Business delegate
Adaptateur EJB
MVC