Los eventos de dominio NO son su API pública.

  • por Derek Comartin
  • Publicado en Derek Comartin (CodeOpinion)
  • Seleccionado el
  • Architecture
  • Messaging
Los eventos de dominio NO son su API pública. - Derek Comartin (CodeOpinion)
Imagen: Derek Comartin (CodeOpinion)

¡Por fin lo lograste! Dejaste de publicar eventos CRUD y comenzaste a transmitir eventos de dominio.

En lugar de publicar ShipmentStatusChanged , ShipmentUpdated o EstimatedDeliveryDateChanged , comenzaste a publicar eventos de dominio más significativos como DeliveryAttemptFailed , ETARecalculated y ShipmentDelayed .

Y al parecer eso se suponía que era mejor, ¿verdad?

Equivocado.

YouTube

Visita mi canal de YouTube , donde publico todo tipo de contenido sobre arquitectura y diseño de software, incluyendo este vídeo que muestra todo lo que aparece en esta publicación.

Ahora publicas eventos de dominio en lugar de eventos CRUD. Pero sigues sufriendo las consecuencias cuando necesitas modificar alguno de esos eventos. Estás dañando a los consumidores, a veces incluso a consumidores cuya existencia desconocías.

Eso se debe a que los eventos de tu dominio son privados. En realidad, no son diferentes a publicar eventos de cambio de datos si estás exponiendo detalles internos que el resto del sistema no debería conocer.