Alors que vous continuez à essayer de découvrir de nouvelles fonctionnalités dans vos applications, trouvez-vous que les solutions que vous proposez sont si similaires à certaines choses que vous avez mises en œuvre auparavant ? Si vous êtes programmeur (même si vous débutez depuis peu de temps), vous avez probablement répondu « oui ». Il semble que vous utilisiez un ancien code pour résoudre des problèmes récemment découverts lors du développement de logiciels. Vous avez peut-être réalisé que votre solution est un principe fondamental, une méthode qui peut être largement répétée non seulement par vous mais par tous les développeurs professionnels.
En fait, de nombreux problèmes de programmation sont rencontrés de manière répétée, et de nombreuses méthodes de base (ou modèles de conception) permettant de résoudre ces problèmes ont vu le jour. Un modèle de conception est un modèle qui vous apprend à organiser votre code à l'aide de conceptions authentiques et fiables.
Historique des modèles de conception
Le terme « modèle de conception » a été inventé à l’origine dans le domaine de l’architecture. Dans son livre de 1977 "A Pattern Language: Towns/Building/Construction", Christopher Alexander décrit certains problèmes courants de conception architecturale et explique comment utiliser une collection de modèles existants et bien connus pour lancer de nouvelles conceptions efficaces. Le point de vue d'Alexander s'applique bien au développement de logiciels, et il existe un consensus à long terme sur l'utilisation des composants existants pour construire de nouvelles solutions.
Tous les modèles de conception ont des caractéristiques communes : un nom, un énoncé du problème et une solution.
1. L'identification d'un modèle de conception est importante car elle permet aux autres programmeurs de comprendre immédiatement le but de votre code sans avoir à l'étudier trop en profondeur (au moins grâce à cette identification, les programmeurs se familiariseront avec ce modèle). ?
2. La description du problème est utilisée pour illustrer le champ d'application de ce modèle. ?
3. La solution décrit l'exécution de ce modèle. Une bonne discussion sur un modèle de conception doit couvrir les avantages et les inconvénients de l’utilisation du modèle. ?
Développer