Onion Architecture
Architecture 🟡 MidDefinition
Variante de Clean Architecture avec des couches concentriques : Domain Model, Domain Services, Application Services, Infrastructure. Dependances vers le centre.
Analogie
Les couches d'un oignon : chaque couche ne connait que celle juste en dessous, le coeur est pur.
Exemple de code
// Couches de l'interieur vers l'exterieur
// 1. Domain: Entity, ValueObject
// 2. Domain Services: business rules
// 3. Application: use cases, orchestration
// 4. Infrastructure: DB, HTTP, messaging
Cas d'usage
Applications enterprise avec logique metier complexe et multiple integrations.
Anti-pattern
Infrastructure au centre qui force le domaine a dependre d'implementations concretes.