Shared Kernel
Architecture 🔴 SeniorDéfinition
Partie de code ou de modèle partagée entre deux Bounded Contexts. Changée uniquement par accord mutuel des deux équipes.
Analogie
Un mur mitoyen entre deux maisons : les deux propriétaires doivent se mettre d'accord avant de le modifier.
Exemple de code
// shared-kernel/
// types/Money.ts - Partage entre Sales et Billing
// types/CustomerId.ts - ID commun
// Tout changement necessite accord des deux equipes
Cas d'usage
Partager des value objects ou des types communs entre deux contextes collaboratifs.
Anti-pattern
Shared kernel qui grossit et devient un monolithe déguisé.