← Proyectos y patrones

Mediator

Encapsular la comunicación entre componentes mediante comandos, consultas y handlers con responsabilidades pequeñas.

Qué resuelve

Reduce dependencias directas entre controladores, servicios y componentes de dominio.

Hace explícito el caso de uso y concentra validación, autorización y ejecución en un handler.

Cuándo tiene sentido

Cuando hay muchos casos de uso independientes y se quiere una frontera clara para comportamientos transversales.

Encaja bien con CQRS, pero no exige separar bases de datos ni desplegar servicios distintos.

Compensaciones

Puede convertirse en una capa de indirección innecesaria si cada llamada trivial recibe su propio handler.

Conviene observar el tamaño del dominio antes de introducir un bus de mensajes completo.

Comentarios