Onion Architecture
AplicaciónCapas en forma de cebolla con el dominio en el centro
Principios Fundamentales
Domain Model en el centroDomain Services en capa mediaApplication Services exteriorInfrastructure en el borde
Cuándo Usar
Aplicaciones enterprise, dominios complejos, cuando testabilidad es prioridad
Cuándo Evitar
Aplicaciones pequeñas, MVPs, CRUD simples
Ventajas y Desventajas
Ventajas
- + Dominio completamente aislado
- + Alta testabilidad
- + Independencia de infraestructura
- + Fácil de mantener
Desventajas
- - Complejidad inicial
- - Mucho boilerplate
- - Curva de aprendizaje