Desacoplando Laravel de tu aplicación

Desacoplando Laravel de tu aplicación

Deja un comentario

Comment as a guest.

  1. Buen Artículo, excelente la explicación pero no entendí bien, pero por culpa mía no del profesor jaja me re intereso el tema pero siento que me falta leer bastante para lograr hacer algo así. Fijate que la parte de la bibliografia justo al menos yo no puedo verla

    1. Muchas gracias Mauro! Voy a mencionar los libros en el artículo porque algunas personas también ya me han dicho que no los pueden ver.

  2. Ciertamente cómo mencionas en el post, una de las contras de aplicar esta arquitectura es la complejidad que conlleva crearla, en lo personal me gusta usar sólo algunos de los conceptos del DDD como los objetos de valor, inmutabilidad, pero pienso que desacoplarse tanto del framework es a su vez desaprovecharlo porque se asume que dentro del diseño se debe contemplar el framework a usar, de todas formas, excelente post.

    1. Concuerdo! Y, como siempre, todo depende del contexto en el que este tu proyecto y el nivel de abstracción que quieras manejar.
      En este mismo ejemplo utilizo cosas de Laravel. Pero creo que lo importante es que tu dominio si este abstraído lo máximo posible del framework, de la base de datos, de servicios de 3ros, etc.
      Muchas gracias por tu comentario :).

  3. Excelente artículo!!!
    Tu solución es mucho más simple que la que hice yo cuando empecé a aplicar DDD con Laravel (5.6)

    Así que ahora me toca Refactoriar mucho!!!!

    Pero no me importa 😉
    Me gusta su solución!
    Enhorabuena!

    PD: Te comento sólo dos detalles (por empezar con algo 🙂
    1. Los id los proporciona la Request en lugar de ser autogenerados por el Repository
    2. La ejecucion de los comandos no devuelven nada.
    Opino que la comunicacion ascendente, desde el Dominio hacia la UI, debe estar resuelto tambien por la Arq Hexagonal.
    En mi caso, mis Handler sí que devuelven respuestas

    En fin, hay mucho que comentar 😉
    Un cordial saludo!

    1. Muchas gracias Javier por tu comentario. Con respecto a los detalles que marcas:
      1. Totalmente de acuerdo! Pero no quise extender el artículo con uuid desde el front y demás. Pero si, es correcto lo que marcas.
      2. En este caso es un «si y no». Si bien puse un return al método execute() del bus de comandos, el handler y el repositorio no esta devolviendo nada y el controlador tampoco espera nada de él.
      Por otro lado, yo creo que, tanto los patrones de diseño como las arquitecturas no deben ser implementadas a raja tabla. Tiene que existir una flexibilidad dependiendo el caso y la mejor solución para cada proyecto.

      Saludos bro!

Próximo articulo

Sliding Sidebar

Matias Echazarreta

¡Hola!

Mi nombre es Matias Echazarreta.
Soy desarrollador web con más de 12 años de experiencia. Amante de Laravel, de los libros y del rock de los ’90. Te puedes comunicar conmigo  por trabajos de contratación, haciendo click aquí.

Nuestro Patreon

Desde Patreon puedes solicitar asesoria personalizado. ¡Ir a Patreon!

Suscríbete a nuestra lista de correo