Accueil

Patterns


Patterns

Je définis souvent les patterns en disant qu'il s'agit d'une solution éprouvée — et élégante — à un problème récurrent. Parmis les patterns, on distingue notamment les Design Patterns — qui répondent à des problématiques techniques, — les Analysis Patterns — qui répondent à des problématiques métier, — mais j'en omet beaucoup d'autres !

Design Patterns

Les Design Patterns sont sûrement les patterns les plus connus dans le monde informatique : il s'agit de solutions prêtes à l'emploi pour des problèmes techniques fréquents dans le monde de la programmation orientée objet. Le livre du Gang of four — Erich Gamma et ses compères — fait office de référence : c'est lui qui les a fait connaître — même si je crois que c'est Kent Beck qui est à l'origine du concept — et il présente 23 patterns désormais classiques — vous avez certainement déjà entendu parler du singleton, de l'observer ou du composite.

Pour éclaircir un peu les choses, les Design Patterns permettent par exemple de répondre à ces questions :

cover

Design Patterns: elements of reusable object-oriented software, E. Gamma, R. Helm, R. Johnson, J. Vlissides, Addison Wesley

Une bible ! Tout bon développeur objet devrait au moins l'avoir feuilleté. Cet ouvrage est assez vieux, ce qui explique pourquoi les diagrammes utilisent la notation OMT et non UML, et pourquoi les exemples sont donnés en C++.

À noter : il faut à tout prix éviter la version française dans laquelle les noms de patterns ont été traduits — sacrilège ! — et qui, en outre, est imprimée sur du papier de mauvaise qualité.

Analysis Patterns

Si les Design Patterns sont des solutions à des problématiques techniques, les Analysis Patterns constituent des solutions à des problématiques fonctionnelles. Par exemple, ils permettent de répondre aux questions suivantes :

cover

Analysis Patterns: reusable object models, Martin Fowler, Addison Wesley

Je ne mentirai pas, ce livre est difficile à lire, mais son contenu est riche : il présente de nombreux Analysis Patterns qui couvrent des domaines aussi varié que la finance, la planification ou le monde médical. Plutôt que de nous expédier des solutions, Martin Fowler réussit à nous montrer comment il parvient à celles-ci. Et c'est finalement là le vrai trésor de ce livre : en montrant comment l'analyste travaille, comment il appréhende les problématiques et comment il les résout, il nous permet de comprendre l'état d'esprit et la démarche qu'il convient d'adopter. En fait, non content de nous présenter ses Analysis Patterns, Martin Fowler nous apprend à penser objet.

[s] Martin Fowler, www.martinfowler.com

Pedagogical Patterns

[s] Pedagogical Patterns, www.pedagogicalpatterns.org