Patron de conception
Les patrons de conception sont des solutions réutilisables pour le développement de logiciels. Ils servent de modèles que les programmeurs peuvent utiliser lors de la création d’applications. Ils ne sont pas propres à des langages de programmation particuliers, mais constituent plutôt des bonnes pratiques ou des heuristiques qui peuvent être appliquées dans différents environnements de programmation.
Bien que les patrons de conception ne dépendent pas d’un langage, ils incluent souvent des objets ou des classes. Ils sont donc généralement associés à la programmation orientée objet. Les différents patrons peuvent être classés en trois catégories : 1) les patrons de création, 2) les patrons structurels et 3) les patrons comportementaux.
1. Patrons de création
Les patrons de conception de création décrivent des façons de créer des objets à l’aide de méthodes adaptées à différentes situations. Par exemple, le patron « Singleton » sert à créer une classe de base qui n’aura qu’une seule instance. Un exemple courant est une variable globale définie dans le code source d’un programme. Un patron « Object Pool » sert à créer une classe avec un « pool » d’objets qui peuvent être récupérés au besoin au lieu d’être recréés. Cette méthode est souvent utilisée à des fins de mise en cache.
2. Patrons structurels
Les patrons de conception structurels définissent les relations entre les objets. Par exemple, le patron « Private Class Data » sert à limiter l’accès à une classe spécifique. Cela peut empêcher la modification indésirable d’un objet. La classe « Decorator », en revanche, permet d’ajouter des comportements et des états à un objet lors de son exécution. Elle offre aux programmeurs la possibilité d’ajouter autant de classes à un objet que nécessaire. Un exemple est un avatar dans un jeu vidéo qui accumule des armes, des armures et des objets tout au long du jeu. La classe, bien nommée, « Decorator » fournirait un cadre adapté à ce processus.
3. Patrons comportementaux
Les patrons de conception comportementaux décrivent le comportement des objets, notamment la façon dont ils communiquent entre eux. Le patron « Command » en est un exemple : il décrit des objets qui exécutent des commandes. Le patron « Memento » enregistre l’état d’un objet afin de pouvoir le restaurer à l’état enregistré. Ces deux patrons peuvent être utilisés ensemble pour effectuer des opérations d’annulation et de rétablissement dans un programme.
Résumé
Chacune des trois catégories comprend plusieurs autres patrons de conception que les programmeurs peuvent utiliser. Bien que ces patrons fournissent des modèles utiles aux développeurs de logiciels, ils sont parfois critiqués parce qu’ils sont inutiles ou pas assez spécifiques pour certaines applications. Ainsi, même si les patrons de conception sont des outils utiles en programmation, il n’est pas nécessaire de les suivre exactement pour créer un logiciel bien conçu.
Testez vos connaissances