BT

Votre opinion compte! Merci de bien vouloir répondre au sondage InfoQ!

Vaughn Vernon présente les styles d'architectures avancés dans un contexte DDD

| par Jan Stenberg Suivre 9 Abonnés , traduit par Nicolas Fédou Suivre 0 Abonnés le 19 juin 2013. Durée de lecture estimée: 2 minutes |

Une note à nos lecteurs : Suite à vos retours, nous avons développé un ensemble de fonctionnalités qui vous permettent de réduire le bruit, tout en ne perdant pas de vue ce qui est important. Recevez des notifications en ligne et par e-mail en choisissant les sujets qui vous intéressent.

Lors d'une présentation sur les styles d'architectures, architecture en couches, architectures hexagonales et le modèle d'acteur, du point de vue du "Domain Driven Design (DDD)", Vaughn Vernon explique que l'architecture hexagonale permet de retarder les prises de décisions concernant les connecteurs et mets en avant l'usage d'APIs internes quelque soit le type de ces connecteurs.

Vaugh Vernon, l'auteur d'Implementing Domain Driven Design, après une courte description de l'émergence de l'architecture comme le résultat naturel du DDD, a continué par une analyse de l'architecture en couches traditionnelle selon le livre du DDD d'Eric Evans avec une interface utilisateur au sommet et une couche d'infrastructure en bas. Un effet indésirable de cette architecture en couches est que l'implémentation, par exemple, des dépôts du domaine (repositories) dans la couche d'infrastructure cassent cette architecture vu que les dépôts dépendent du modèle du domaine. En les déplaçant en haut et en utilisant le principe d’inversion de dépendance pour les injecter, on évite de casser l'architecture et on la rend plus flexible en permettant l'injection de plusieurs implémentations.

Style d'architecture Hexagonal

Vaughn poursuit avec le style d'architecture hexagonal, les ports et les adaptateurs, qui a été crée par Alistair Cockburn. Vaughn voit ce style comme une évolution du style en couche avec deux avantages principaux. Il permet de retarder les décisions pour certaines mécaniques comme le type de persistance à utiliser sans impacter l'avancement de l'implémentation de fonctionnalités. Le point principal étant que penser en termes de ports et d'adaptateurs rend plus facile l'usage d'une même API interne pour différents types de clients.

Une architecture orientée événements peut être dérivée de ce style en décrivant chaque contexte confiné (bounded context) comme étant un hexagone, publiant et écoutant des événements.

Le modèle d'acteur

Dans le modèle d'acteur, chaque objet est un acteur, avec une boite aux lettres et un comportement, qui échange des messages entre acteurs au travers de boites aux lettres. Toute la communication est asynchrone et sans états partagés entre les acteurs. Vaughn trouve ce modèle des plus intéressants et l'expérimente maintenant en appliquant le modèle d'acteur sur un style DDD. Il implémente les agrégats comme des acteurs en profitant de leur état interne naturellement autonome, de l'absence d'état partagé et de la messagerie asynchrone. Ces qualités simplifient grandement l'usage de la concurrence dans des systèmes hautement sollicités.

Evaluer cet article

Pertinence
Style

Bonjour étranger!

Vous devez créer un compte InfoQ ou cliquez sur pour déposer des commentaires. Mais il y a bien d'autres avantages à s'enregistrer.

Tirez le meilleur d'InfoQ

Donnez-nous votre avis

Html autorisé: a,b,br,blockquote,i,li,pre,u,ul,p

M'envoyer un email pour toute réponse à l'un de mes messages dans ce sujet
Commentaires de la Communauté

Html autorisé: a,b,br,blockquote,i,li,pre,u,ul,p

M'envoyer un email pour toute réponse à l'un de mes messages dans ce sujet

Html autorisé: a,b,br,blockquote,i,li,pre,u,ul,p

M'envoyer un email pour toute réponse à l'un de mes messages dans ce sujet

Discuter

Se connecter à InfoQ pour interagir sur ce qui vous importe le plus.


Récupérer votre mot de passe

Follow

Suivre vos sujets et éditeurs favoris

Bref aperçu des points saillants de l'industrie et sur le site.

Like

More signal, less noise

Créez votre propre flux en choisissant les sujets que vous souhaitez lire et les éditeurs dont vous désirez suivre les nouvelles.

Notifications

Restez à jour

Paramétrez vos notifications et ne ratez pas le contenu qui vous importe

BT