Glossaire
Glossaire
Tous les termes des trois approches, définis simplement et reliés aux articles qui les expliquent en détail.
36 termes
- Adaptateur (Adapter) Hexagonale
- Implémentation technique concrète d'un port : un contrôleur REST, un repository PostgreSQL, un client email. Le domaine ignore lequel est utilisé à un instant donné. Lire l'article →
- Adaptateurs d'interface (Interface Adapters) Clean Architecture
- Couche de traduction entre le format pratique pour les cas d'usage et le format pratique pour la technologie externe : contrôleurs, présentateurs, mappers. Lire l'article →
- Agrégat (Aggregate) DDD
- Groupe d'entités et de value objects qui doivent rester cohérents ensemble à tout instant, avec une racine unique qui garantit les invariants. Lire l'article →
- Anticorruption Layer (ACL) DDD
- Couche de traduction construite par un contexte pour se protéger d'un modèle externe qu'il ne veut pas laisser polluer son propre langage métier. Lire l'article →
- Big Ball of Mud Transversal
- Système sans frontière ni structure claire, où tout dépend de tout. C'est précisément ce que ports/adaptateurs, cercles et bounded contexts cherchent à éviter.
- Bounded Context DDD
- Frontière explicite à l'intérieur de laquelle un modèle donné est valide et cohérent. Un même mot ("Client") peut désigner des modèles différents dans des contextes différents. Lire l'article →
- Cas d'usage (Use Case / Interactor) Clean Architecture
- Orchestration spécifique à l'application ("passer une commande", "annuler un abonnement"). Utilise les entités et définit, via des interfaces, ce dont il a besoin de l'extérieur. Lire l'article →
- Conformist DDD
- Relation de context mapping où un contexte aval accepte tel quel le modèle d'un contexte amont, sans possibilité de négociation. Lire l'article →
- Context Mapping DDD
- Description explicite des relations entre plusieurs bounded contexts : Shared Kernel, Customer/Supplier, Conformist, Anticorruption Layer, Open Host Service. Lire l'article →
- Couplage et cohésion Transversal
- Le couplage mesure à quel point deux composants dépendent l'un de l'autre ; la cohésion mesure à quel point les éléments d'un même composant partagent une seule responsabilité claire. Les trois approches visent un couplage faible et une cohésion forte.
- Customer / Supplier DDD
- Relation où un contexte amont (fournisseur) fournit des données ou services à un contexte aval (client), qui peut influencer sa feuille de route. Lire l'article →
- Domain Event DDD
- Fait qui s'est produit dans le domaine, nommé au passé (OrderPlaced). Permet à d'autres parties du système de réagir sans couplage direct. Lire l'article →
- Domain Service DDD
- Opération métier qui n'appartient naturellement à aucune entité précise, comme transférer un montant entre deux comptes distincts. Lire l'article →
- Entité (Entity, sens DDD) DDD
- Objet défini par son identité, qui persiste dans le temps même si ses attributs changent. Une Commande reste la même commande qu'on lui ajoute une ligne. Lire l'article →
- Entités (cercle Clean Architecture) Clean Architecture
- Le cercle le plus interne : les règles métier les plus générales de l'entreprise, celles qui survivraient à un changement complet d'application. Lire l'article →
- Event Storming DDD
- Atelier collaboratif où développeurs et experts métier posent ensemble, sur des post-its, les événements de domaine pour découvrir le modèle et les bounded contexts.
- Factory DDD
- Encapsule une logique de création complexe ou soumise à des règles, quand un simple constructeur ne suffit plus à garantir un objet valide. Lire l'article →
- Frameworks & Drivers Clean Architecture
- Le cercle le plus externe de Clean Architecture : base de données, framework web, interface utilisateur. Réduit au minimum, essentiellement du câblage. Lire l'article →
- Gateway Clean Architecture
- Terme utilisé en Clean Architecture pour désigner une interface définie par un cas d'usage vers l'extérieur - l'équivalent direct d'un port sortant en hexagonale. Lire l'article →
- Indépendance au framework Transversal
- Capacité du code métier à fonctionner, être compris et testé sans dépendre d'un framework particulier - un des objectifs partagés par les trois approches.
- Inversion de dépendance (Dependency Inversion Principle) Transversal
- Principe SOLID selon lequel les modules de haut niveau ne devraient pas dépendre des modules de bas niveau, mais tous deux d'abstractions. Fondement technique commun à l'hexagonale et à Clean Architecture.
- Langage omniprésent (Ubiquitous Language) DDD
- Vocabulaire précis et partagé entre développeurs et experts métier, utilisé sans traduction, jusque dans le nom des classes et des méthodes du code. Lire l'article →
- Modèle anémique (Anemic Domain Model) Transversal
- Anti-pattern où les entités ne sont que des sacs de données avec getters/setters, toute la logique métier étant déportée dans des services externes.
- Noyau de domaine (Domain core) Hexagonale
- Le centre de l'hexagone : entités, règles métier, cas d'usage. Il ne dépend d'aucun framework, d'aucune base de données, d'aucune bibliothèque technique. Lire l'article →
- Onion Architecture Transversal
- Architecture proposée par Jeffrey Palermo, cousine directe de l'hexagonale et de Clean Architecture : couches concentriques avec dépendances qui pointent vers le centre.
- Open Host Service DDD
- Contexte qui expose un protocole public bien défini, pensé pour être consommé par plusieurs autres contextes sans coordination individuelle. Lire l'article →
- Port Hexagonale
- Interface définie par le domaine pour communiquer avec l'extérieur, dans un vocabulaire strictement métier. Il en existe deux sortes : entrants (ce que le domaine propose) et sortants (ce dont il a besoin). Lire l'article →
- Port entrant (Driving / Primary port) Hexagonale
- Port qui permet à l'extérieur de piloter le domaine : typiquement l'interface d'un cas d'usage, appelée par un contrôleur, une CLI ou un test. Lire l'article →
- Port sortant (Driven / Secondary port) Hexagonale
- Port que le domaine définit parce qu'il a besoin de quelque chose de l'extérieur : persister une donnée, envoyer un message. C'est le domaine qui fixe la forme de l'interface. Lire l'article →
- Présentateur (Presenter) Clean Architecture
- Composant de la couche Adaptateurs d'interface qui met en forme le résultat d'un cas d'usage pour l'affichage, sans porter de règle métier. Lire l'article →
- Racine d'agrégat (Aggregate Root) DDD
- Seule entité d'un agrégat accessible depuis l'extérieur. Tout accès aux objets internes de l'agrégat passe obligatoirement par elle. Lire l'article →
- Règle de dépendance (Dependency Rule) Clean Architecture
- Principe central de Clean Architecture : le code source d'un cercle ne peut référencer que des éléments du même cercle ou d'un cercle plus interne. Jamais l'inverse. Lire l'article →
- Repository DDD
- Donne l'illusion d'une collection en mémoire pour un agrégat donné (save, findById). Correspond toujours à une racine d'agrégat, jamais à une entité interne. Lire l'article →
- Testabilité Transversal
- Facilité avec laquelle une règle métier peut être vérifiée par un test automatisé rapide, sans base de données ni serveur - un des bénéfices directs de l'isolation du domaine. Lire l'article →
- Value Object (objet-valeur) DDD
- Objet défini uniquement par ses attributs, sans identité propre, et immuable par construction. Deux Money de "10 EUR" sont interchangeables. Lire l'article →