Académique Documents
Professionnel Documents
Culture Documents
Singleton
• Catégorie : Création.
• Limiter l’instanciation d’une classe à une seule instance et fournir un point d'accès
global à cette instance.
• Utilisé pour la journalisation, objets pilotes etc...
• Un constructeur privé pour restreindre l’instanciation de la classe à partir d’autres
classes.
• Une variavle statique privée qui est la seule instance de la classe.
• Une méthode statique publique qui retourne l’instance de la classe : le point d’accès
global.
• Exemple : le cas le plus utilisé pour le design pattern singleton c’est la connexion à
une BD : on doit ouvrir juste un seul canal de connexion.
Strategy
• Catégorie : Comportement.
• Séparer l'algorithme de son utilisation, permettant ainsi de changer dynamiquement
le comportement d'un objet à l'exécution, sans toucher à son code source.
• Le comportement souhaité est encapsulé dans des classes distinctes appelées
"stratégies".
• Stratégie : Interface ou classe abstraite qui définit une méthode ou des méthodes
pour le comportement.
• Contexte : La classe qui utilise une stratégie pour effectuer des opérations. Elle
détient une référence à une stratégie et peut la changer selon le besoin.
• Exemple : Contexte Programme de Tri , Stratégies Tri Bulles , Tri Rapide, Tri Fusion.
Builder
• Catégorie : Création.
• Construire un objet pièce par pièce, généralement via une interface . Cela permet
d'encapsuler le processus de construction et de réduire la complexité liée à la
création directe de ces objets.
• Produit : L'objet complexe à construire.
• Builder : Interface ou classe abstraite qui définit les étapes nécessaires pour
construire le produit.
• Builders concrets : Implémentations spécifiques du Builder, chacune capable de
construire des variantes différentes du produit.
• Directeur : Un objet qui dirige le processus de construction, il peut définir l'ordre
dans lequel les parties sont assemblées.
• Exemple : Construire des objets complexes comme des voitures, ou des documents
comme des rapports ou des formulaires complexes.
Decorator
• Catégorie : Structure.
• Implémenter la même interface que le composant de base, mais en ajoutant des
comportements ou des fonctionnalités spécifiques supplémentaires.
• Composant : L'interface ou classe de base qui définit le comportement standard.
• Composant concret : Une implémentation spécifique du composant.
• Décorateur : Une classe qui implémente la même interface que le composant et
contient une référence au composant qu'elle décore.
• Décorateurs concrets : Des classes qui ajoutent des comportements spécifiques.
• Exemple: dans une application graphique, vous pouvez avoir un objet "Text" de base
et des décorateurs comme "BorderDecorator" (ajoutant une bordure autour du
texte) ou "ColorDecorator" (changeant la couleur du texte).