Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Conseil / Astuce
Ce contenu est un extrait du livre électronique 'Architecture des microservices .NET pour les applications .NET conteneurisées', disponible sur .NET Docs ou en tant que PDF téléchargeable gratuitement, lisible hors ligne.
Concevez un modèle de domaine pour chaque microservice ou contexte délimité qui reflète la compréhension du domaine métier.
Cette section se concentre sur les microservices plus avancés que vous implémentez lorsque vous devez aborder des sous-systèmes complexes ou des microservices dérivés des connaissances des experts du domaine avec des règles métier en constante évolution. Les modèles d’architecture utilisés dans cette section sont basés sur la conception pilotée par le domaine (DDD) et les approches de séparation des responsabilités des commandes et des requêtes (CQRS), comme illustré dans la figure 7-1.
Différence entre l’architecture externe : modèles de microservice, passerelles d’API, communications résilientes, pub/sub, etc. et architecture interne : données pilotées/CRUD, modèles DDD, injection de dépendances, plusieurs bibliothèques, etc.
Figure 7-1. Architecture de microservice externe et modèles d’architecture interne pour chaque microservice
Toutefois, la plupart des techniques de microservices pilotés par les données, telles que l’implémentation d’un service d’API web core ASP.NET ou l’exposition des métadonnées Swagger avec Swashbuckle ou NSwag, sont également applicables aux microservices plus avancés implémentés en interne avec des modèles DDD. Cette section est une extension des sections précédentes, car la plupart des pratiques expliquées précédemment s’appliquent également ici ou pour n’importe quel type de microservice.
Cette section fournit d’abord des détails sur les modèles CQRS simplifiés utilisés dans l’application de référence eShopOnContainers. Plus tard, vous obtenez une vue d’ensemble des techniques DDD qui vous permettent de trouver des modèles courants que vous pouvez réutiliser dans vos applications.
DDD est un sujet important avec un ensemble complet de ressources pour l’apprentissage. Vous pouvez commencer par des livres comme Domain-Driven Design par Eric Evans et des matériaux supplémentaires de Vaughn Vernon, Jimmy Nilsson, Greg Young, Udi Dahan, Jimmy Bogard et de nombreux autres experts DDD/CQRS. Mais la plupart d’entre vous devez essayer d’apprendre à appliquer des techniques DDD à partir des conversations, du tableau blanc et des sessions de modélisation de domaine avec les experts de votre domaine métier concret.
Ressources supplémentaires
DDD ( conceptionDomain-Driven)
Eric Evans. Langage de domaine
https://domainlanguage.com/Martin Fowler. Conception basée sur le domaine
https://martinfowler.com/tags/domain%20driven%20design.htmlJimmy Bogard. Renforcer votre domaine : un guide introductif
https://lostechies.com/jimmybogard/2010/02/04/strengthening-your-domain-a-primer/Webinaire de conception de Domain-Driven distribué
https://particular.net/webinars/ddd-design-no-nonsense-implementation-guide
Ouvrages DDD
Eric Evans. conception Domain-Driven : s’attaquer à la complexité au cœur du logiciel
https://www.amazon.com/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215/Eric Evans. référence de conception Domain-Driven : définitions et résumés de modèles
https://www.amazon.com/Domain-Driven-Design-Reference-Definitions-2014-09-22/dp/B01N8YB4ZO/Vaughn Vernon. Implémentation de la conception de Domain-Driven
https://www.amazon.com/Implementing-Domain-Driven-Design-Vaughn-Vernon/dp/0321834577/Vaughn Vernon. Domain-Driven Design Distilled
https://www.amazon.com/Domain-Driven-Design-Distilled-Vaughn-Vernon/dp/0134434420/Jimmy Nilsson. Application du design et des modèles Domain-Driven
https://www.amazon.com/Applying-Domain-Driven-Design-Patterns-Examples/dp/0321268202/Cesar de la Torre. Guide d’architecture de Domain-Oriented en couches N avec .NET
https://www.amazon.com/N-Layered-Domain-Oriented-Architecture-Guide-NET/dp/8493903612/Abel Avram et Floyd Marinescu. conception Domain-Driven rapidement
https://www.amazon.com/Domain-Driven-Design-Quickly-Abel-Avram/dp/1411609255/Scott Millett, Nick Tune - Motifs, Principes et Pratiques de Domain-Driven Design
https://www.wiley.com/Patterns%2C+Principles%2C+and+Practices+of+Domain+Driven+Design-p-9781118714706
Formation DDD
- Julie Lerman et Steve Smith. Principes de base de la conception Domain-Driven
https://www.pluralsight.com/courses/fundamentals-domain-driven-design