Histoire des patrons de conception
Qui a inventé les patrons de conception ? La question est légitime, mais le terme est mal choisi. Les patrons de conception ne sont pas des concepts obscurs et sophistiqués, c’est plutôt l’inverse. Ce sont des solutions classiques à des problèmes connus en conception orientée objet. Lorsqu’une question revient encore et encore dans différents projets, quelqu’un se décide finalement à détailler la solution et à lui donner un nom. C’est souvent comme cela qu’un patron est découvert.
Le concept de patron de conception a d’abord été décrit par Christopher Alexander dans A Pattern Language: Towns, Buildings, Construction. Le livre invente un « langage » pour concevoir un environnement urbain. Les unités de ce langage sont des patrons. Ils peuvent indiquer la hauteur attendue des fenêtres, le nombre d’étages qu’un bâtiment devrait avoir, la taille des espaces verts d’un quartier, etc.
Cette idée a été reprise par quatre auteurs : Erich Gamma, John Vlissides, Ralph Johnson, et Richard Helm. En 1994, ils ont publié Design Patterns : Catalogue de modèles de conception réutilisables, dans lequel ils ont appliqué ce concept de patrons à la programmation. Le livre contient 23 patrons qui résolvent différents problèmes de conception orientée objet et est très rapidement devenu un best-seller. Son nom était un peu trop long et au cours du temps, il a naturellement été remplacé par « the book by the Gang of Four » (le livre du gang des quatre), puis encore raccourci en « the GoF book ».
Depuis ce jour, des dizaines de nouveaux patrons de conception pour la programmation orientée objet ont été découverts. L’utilisation des patrons est devenue tellement populaire dans les autres domaines de la programmation, que de nombreux patrons leur sont spécifiques et ne s’appliquent pas à la programmation orientée objet.