Question

J'ai donc reçu cette question de l'un des développeurs de mon équipe: Qu'est-ce que la conception pilotée par domaine? Je pourrais bien sûr citer le livre de Evans mais est-ce vraiment une réponse?

Comment expliquez-vous DDD en quelques phrases aux jeunes ingénieurs en logiciel de votre équipe?

Était-ce utile?

La solution

Je dirais que cette pratique favorise la concentration de vos efforts sur "l'espace du problème" plutôt que sur "l'espace de la solution". Piloter une solution émergente (le design) en étudiant et en apprenant vraiment à connaître et à comprendre le domaine. L'une des pratiques (tirée de XP) serait l'écriture d'histoires qui se produisent dans le domaine problématique. À partir de ceux-ci, vous pouvez identifier vos cas d'utilisation et objets pour votre conception. Ils "émergent" et vous disent ce qui doit être dans la solution et comment ils devront interagir les uns avec les autres.

Autres conseils

InfoQ a un eBook gratuit:

Conception pilotée par le domaine rapidement

C’est une bonne lecture avec beaucoup d’exemples.

En cours de découverte du " domaine " vous formez un langage commun, que les développeurs et tous les autres acteurs du projet comprennent.

Le modèle de domaine et son "jargon" est assez observable dans le code source du produit fini. C’est au moins mon expérience

Le langage dit omniprésent est une partie importante de DDD. c'est-à-dire parler le même langage que les experts métier. Et créez votre code / architecture afin qu’il reflète ce langage afin d’éviter les problèmes d’impédance.

Essayer de comprendre en quoi consiste le logiciel que vous écrivez et refléter cette compréhension dans le modèle.

La conception pilotée par le domaine concerne la gestion de la complexité d'une application dans le modèle de domaine où elle peut être facilement distillée.

Il est très difficile à décrire en quelques phrases, mais je recommanderais le livre InfoQ en tant que bonne introduction. J'ai aussi entendu parler de beaucoup de gens faisant un club de lecture avec le livre DDD d'Evans, ce qui a beaucoup aidé à comprendre.

Pour moi, il s’agit du prochain niveau de OOD / OOP où l’encapsulation concerne uniquement l’espace du problème, tel que décrit et compris par les utilisateurs, et non pas tant l’application technique.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top