Capítulo 8. Los eventos y el bus de mensajes

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

Hasta ahora hemos dedicado mucho tiempo y energía a un problema sencillo que podríamos haber resuelto fácilmente con Django. Puede que te preguntes si realmente merece la pena tanto esfuerzo por el aumento de la comprobabilidad y la expresividad.

En la práctica, sin embargo, descubrimos que no son las funciones obvias las que ensucian nuestras bases de código: es el goop alrededor del perímetro. Son los informes, los permisos y los flujos de trabajo que afectan a millones de objetos.

Nuestro ejemplo será un requisito de notificación típico: cuando no podemos asignar un pedido porque nos hemos quedado sin existencias, debemos alertar al equipo de compras. Ellos irán a solucionar el problema comprando más existencias, y todo irá bien.

Para una primera versión, el propietario de nuestro producto dice que podemos simplemente enviar la alerta por correo electrónico.

Veamos cómo aguanta nuestra arquitectura cuando tengamos que conectar algunas de las cosas mundanas que componen gran parte de nuestros sistemas.

Empezaremos por hacer lo más sencillo y expeditivo, y hablaremos de por qué es exactamente este tipo de decisión la que nos lleva a la Gran Bola de Barro.

A continuación, mostraremos cómo utilizar el patrón de Eventos de Dominio para separar los efectos secundarios de nuestros casos de uso, y cómo utilizar un sencillo ...

Get Patrones de Arquitectura con Python now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.