Clean Architecture / Hexagonal
Aislar las reglas de negocio de los detalles técnicos (framework, base de datos, UI) mediante capas y puertos.
Qué resuelve
El dominio y los casos de uso no dependen de frameworks, ORMs ni proveedores externos — dependen solo de interfaces (puertos).
La infraestructura (base de datos, HTTP, colas) implementa esas interfaces (adaptadores) y se puede reemplazar sin tocar el dominio.
Facilita probar la lógica de negocio con tests unitarios rápidos, sin levantar base de datos ni servidor.
Cuándo tiene sentido
El sistema va a vivir mucho tiempo y es probable que cambien piezas de infraestructura (base de datos, proveedor de pagos, framework web).
Hay reglas de negocio no triviales que merecen quedar aisladas y testeadas independientemente de la capa web.
Compensaciones
Más indirección: interfaces, mapeos entre capas, más archivos para el mismo caso de uso.
En un CRUD pequeño o un prototipo, la ceremonia de capas suele costar más de lo que ahorra.
Requiere disciplina del equipo para no filtrar detalles de infraestructura hacia el dominio "por conveniencia".
Comentarios