Shared Kernel
Architecture 🔴 SeniorDefinition
Partie de code ou de modele partagee entre deux Bounded Contexts. Changee uniquement par accord mutuel des deux equipes.
Analogie
Un mur mitoyen entre deux maisons : les deux proprietaires 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 deguise.