Aggregate

Architecture 🔴 Senior

Définition

Groupe d'entités et de value objects traite comme une unité de cohérence transactionnelle. Toutes les modifications passent par la racine d'agrégat.

Analogie

Un bon de commande avec ses lignes : tu ne modifies jamais une ligne directement, tu passes toujours par la commande.

Exemple de code

class Order {
  #items = [];
  addItem(product, qty) {
    this.#items.push(new OrderLine(product, qty));
    this.recalculateTotal();
  }
}

Cas d'usage

Garantir les invariants métier dans un périmètre transactionnel défini.

Anti-pattern

Agrégats trop gros qui verrouillent trop de données — contention en prod.
#architecture#interview#ddd

← → au clavier pour passer d'une fiche à l'autre