Muchas gracias por esta clase de videos. Llevo muchos años trabajando con proyectos que están hechos de "aquella manera" y que debíamos evolucionar y esta clase de vídeos me está ayudando a reciclarme, aprender cómo se debe trabajar correctamente y me ayudaran a encontrar un mejor trabajo y salir del pozo en el que estoy
Felicitaciones, tanto dar vueltas por internet buscando videos sobre la arquitectura hexagonal, este ha sido el mejor, explica todo de forma entendible y en poco tiempo. Seguir adelante, seria interesante si hacen algun acercamiento a golang. Saludos
Gran forma de explicarlo, de las más claras y mejor argumentadas que he visto. La carpeta shared es la clave para no repitir el mismo codigo en todas las ramas. Me gustaria ver la solucion propuesta cuando algun componente es comun a varias ramas pero no en otras, donde ubicarlo y porqué. Desde siempre me "chirria" el tener una interfaz en el dominio que me conecte, aun sin acoplamiento, a la estructura, quizas porque yo lo planteo como diferentes capas de controllers, unos trabajando con peticiones y otros con infraestructuras externas como la persistencia. Saludos!
llevo tiempo trabajando así, y es increíble como algo tan simple como organizar bien las carpetas ayuda a mejorar el rendimiento de un equipo, hace años teníamos todo separado por capas y era muy difícil integrar nuevos colegas, luego cambiamos a separar por entidades/conceptos y se integra más fácil un nuevo programador
Y mentiras no son, yo tambien me la pase como 1 semana haciendo una investigacion, abordando terminos tecnicos y todo, y ya creia tenerlo claro pero a la vez con dudas, y vengo y veo esto y de una se me aclaro la mente.
Peaso video. Se lo pienso poner a todos mis compañeros para que vean hacia donde debemos tirar. Ya tenia muy en mente la arquitectura Hexagonal pero gracias a este MiniEjemplo se me han aclarado infinidad de dudas. Y la organizacion de paquetes/carpetas, de 10!
Excelente explicación. Me encanta el espíritu con el que lo explican todo, energía y cero aburrimiento. No conocía el canal, pero recién lo descubro y me he visto varios videos de un saque. Felicitaciones!!!
Recuerdo hace un tiempo atrás, presentarle esta arquitectura a un profe en la uni.. Tenia un ejemplo hecho en Spring y lo llame para mostrarle lo fácil que era de leer, y simplemente me dijo "Si me presentas algo así, te pongo un uno".
Jajaj yo también tuve un profe imbecil en la uni, nos pidió hacer un sistema contable como proyecto final en .net, yo tenia todo altamente desacoplado con código muy legible en 3 capas y un compañero le toco hacer el misml proyecto pero metiendo todo el código espageti en una clase main con muchas queries sql duplicadas y dijo que mi proyecto estaba mal porque se veía muy simple y me puso 7 y que lo debí ver hecho como mi compañero porque hizo mucho codigo y a él le puso 10, es la gran diferencia de solo ser profesor y nunca ver trabajado profesionalmente, actualmente mis ingresos son 5 veces mayores que el de mi compañero gracias a ser simplista
Excelente aporte, justo estaba restructurando el scaffolding de un app con node y graphql a la cuál le había planteado una arquitectura Role-Based (Laravel) a algo mas como lo que mencionas, sin embargo estoy mas familiarizado con términos como Providers, Services, Repositories, Models para dividir las diferentes capas. Agradecido con el video puesto a que no soy nada experto en el tema y ver ejemplo sirve de mucha ayuda.
Excelente bro!!! Al fin gente buena que no inducen a malas prácticas en sus vídeos y rompen el esquema del típico "Hello world." y/o enseñanzas de una tecnología en particular para enseñar buenas practicas, principios y propagar los grandes esfuerzos de los grandes artesanos del software!!!
Vi los primeros videos del tema y me ayudaron mucho a mejorar mis productos, a conocer conceptos y referencias, señores muchas gracias, genial el trabajo que hacen, ya me escribí a la plataforma y parezco un niño en dulceria ..... por cierto sería genial videos y su respectivo curso de eventstorming, la descubrí hace poco y aunque la estoy aprendiendo por mi lado, sería un gran complemento para su serie de arquitectura y en especial para el trabajo que están haciendo con ddd .... en fin gracias muchachos
Empeze hace casi 1 año a trabajar con Angular, en un principio me costo aprenderlo, por el tipado de ts y las dependencias, pero he desarrollado en un 80% (progresivamente)siguiendo el esquema de clean architecture, sin darme cuenta, joder! Para mi Angular mola mucho en cuanto a escabilidad y clean architecture.
Que buena nota compas. Cosas así marcan la diferencia entre ser simple coder y ser un real problems solver. Y explicado de una manera super chévere. Estoy iniciando el cambio de carrera, y con esto confirmo que pensar en software es una cosa más pictórica; más figuras que líneas de comandos. Gracias cracks. Suscrito. 🤙🏼
Brutal!, gracias gracias!, yo buscando una buena explicación por todos lados esta semana y mira lo que saca rafa ❤! felicidad es mi segundo nombre ahora 🤣🤣🤣🤣🤣
Qué buen video, llevo varios días tratando de encontrar un material como éste y cada quién lo explica desde enfoques meramente hexagonales o prácticos pero sin mostrar el por qué, ni de forma dinámica como se enseña acá, muchas gracias! me gustaría ver el de shared!
Genial explicado!!!! Ya me hice los cursos de Hexagonal, pero voy a reflotar mis apuntes y a meter este video porque es mucho mas claro, maravilla!!! Mil gracias. Por cierto.... VTyledoC a etebírcsuS
El problema es que la comunidad de desarrolladores se ha pasado los ultimos 30 años cambiandole el nombre continuamente a los viejos conceptos, con la buena voluntad de matizarlos y actualizarlos, pero al final cambiandoles de nombre continuamente. Es duro aprender conceptos cuando cada nuevo libro sobre desarrollo los renombra. Ports & Adapters es una aplicacion del viejo patron estructural Adapter, donde una interfaz nos abstrae de la implementacion concreta de otro sistema, eliminando todo acoplamiento.
O al ser mas genérico que ese patron Adapter, tambien se podria acabar implementando como una fachada, patron Facade. Entonces... al dar nuevos nombres se empieza a complicar la asimilacion. El verdadero reto es unificar conceptos quedandonos con los bàsicos, estableciendo una denominacion y respetandola cuando se tengan que crear nuevos conceptos.
Ya conocia, pero no sabia que se les llamaba asi especificamente jajaja Primera vez que veo un video tuyo, muy buena produccion y la explicacion tambien! +1Sub Espero el video de modulos compartidos, me vendria muy bien. Me cuesta entender las ventajas cuando tenes clases del modelo que necesitan tambien estar entre capas (nose si serian dto u otra cosa)
Voy a comprar su curso, ya he estado intentando implementar clean architecture, muchas cosas han mejorado y todo va respaldado por tests pero aun siento que falta mucho para que sea ampliamente escalable, buenos videos. Saludos
Dios... por estas fechas me hablaron de DDD y arquitectura hexagonal, lo quería aplicar a un software pero no tenia ni idea de como empezar!!! gracias!! julio 2021 comete a mayo 2020
Me gusto mucho este formato de video, aprendí bastante para darme una idea de que trata arquitectura hexagonal, ya veo porque la mencionan mucho en este canal🤙😎
@@CodelyTV una pregunta, espero no quite mucho tiempo, en contexto estoy por iniciar un proyecto en react, ¿Se puede aplicar esta arquitectura? A grandes razgos como se imaginan que se logre aplicar (para darme una idea y tener un punto de partida a investigar)
Casi me voy cuando dijiste “las arquitecturas también son de mobile y frontend” pero bueno me quede y resulto ser un video muy provechoso. Excelente explicación
Esa organización de carpetas es básicamente por componentes, se puede aplicar tanto en arquitecturas limpias como en el MVC. La programación por componentes permite una alta cohesión y un bajo acoplamiento, siempre que los componentes ofrezcan y consuman servicios de otros componentes solo a través de interfaces, que creo que sería la capa de aplicación en esta arquitectura. ¡Genial el video!
Tienes una forma de explicar con visuales y en sencillo que me han ayudado mucho para comenzar a trabajar en ello, muchas gracias por este video, nuevo suscriptor al barco Desde ya me tomo la tarea de buscar más info en tu canal, saludos y buena vibra
Que videazo te has marcado no??!! 👏🏻👏🏻👏🏻 La verdad es que siempre me ha parecido muy top vuestra propuesta de estructura de directorios. De un vistazo entiendes todo el contexto. Veis viable una transición progresiva entre la propuesta del libro de DDD en PHP y la vuestra? Porque me imagino un caos bastante loco, pero en aplicaciones grandes hacer el cambio de golpe también lo veo difícil. Algún consejo o experiencia? Un abrazo!
Muchas gracias, Laura :) Es totalmente posible, aunque mientras dure la transición todo queda un poco raro. O sea, tener las carpetas: ├── Application ├── Domain └── Infrastructure E ir añadiendo por allí los nuevo módulos que se vayan sacando/se muevan (aplicando la regla del boy scout) Entonces, temporalmente (mientras dura el proceso de migración, que puede ser un tiempo) quedaría algo como: ├── Application ├── Domain ├── Infrastructure ├── Product └── User Que se ve feo y ralla, pero es la mejor forma que hemos ido viendo de hacerlo. También cabe decir que es un refactor facilito de hacer (ya que sólo es mover clases) y que seguramente hasta con herramientas como github.com/rectorphp/rector se puede llegar a automatizar. Un saludo!! :)
Me gusta. Me interesaría ver el de C#. Ya que en .NET se suelen distribuir en diferentes proyectos las capas. Tenes en un proyecto la infra, en otro la app y entro el dominio (cosa que me gusta bastante). Por lo tanto a esto lo veo de la forma, segun el video, "por tipo y quien eres"
Tienes este repositorio una implementación de Clean Architecture en C# con .Net Core en la que yo me he basado para realizar ya algún proyecto y estoy muy contento. github.com/jasontaylordev/NorthwindTraders en el repositorio también encontrarás enlaces a más documentación y a un vídeo en el que explica el por qué de esa arquitectura.
Excelente vídeo, muy muy útil, muchas gracias por los aportes tan grandes y geniales a la comunidad. Me queda la duda de cómo se manejaría la capa trasversal?.
Hola que super video, llevo mucho tiempo con Laravel y siempre he querido montar una buena infraestructura, seria genial que hiciera un curso pero directamente con Laravel de DDD, se que tendrán mucho éxito por que es el framework del momento en php. Saludos
Excelente demostración y explicación! me gustaría saber mas, sobre la carpeta Shared, Como compartir entre módulos del dominio? Ejemplo si tengo una relación entre dos entidades, como lo haría? Saludos!
@@CodelyTV Excelente! llevo programando en php desde 2014 y gracias a sus videos, puedo decir que mejorado al 150% todo lo referente a arquitectura en mi forma de programar, como dicen allá, sois unos cracks!
Muy interesante el DDD, explorando el repo de Java encontre que el repo de SOLID, sería bueno den una ojeada al libro de arquitectura limpia de Uncle Bob hace unas aclaraciones muy buenas, sobre todo que la "S" de Single Responsability NO significa que una clase deba tener una sola responsabilidad o peor aún que solo tenga un metodo. Saludos y buenas vibras.
Muy buen video. Una pregunta: Por Dominios te refieres a entidades? O un dominio puede tener varias entidades? (Ej. domain user -> entities: user, role, etc
Cuanta falta hacían estos vídeos Rafa, con todo respeto, los últimos también habrá a quien le guste, qué cómo hacer mis dotfiles, que cómo mejorar mi shell... Pero al final, los de más impacto en la calidad del software son estos. Gracias
¡Todo es necesario! 😂 A mí, personalmente, me hubiese encantado conocer todo estos temas de los dotfiles hace 10 años (me hubiese ahorrado mucho tiempo). Como norma general hacemos los vídeos que nos hubiera gustado ver :) Saludos!
Excelente video, entendí algunas cosas, tendré que verlo de nuevo, soy programador Junior y me cuesta un poco todavia entender todo este tipo de cosas, estoy acostumbrado al MVC.
Muy buen video, actualmente estoy migrando mi proyecto a DDD basándome en este mismo repository de github, no eh implementado todo y ya se notan los beneficios, es mucho mas simple hacer las pruebas. Se agradece todo lo que comparten, 👍. Estaría genial ejemplos de generic repository, query by criteria, data mappers, como organizan todo eso? También tengo unas dudas sobre si todo los objetos externos se obtienen por medio de repository, por ejemplo peticiones http a servicios externos, usan application service o repository?
A tu última pregunta utilizamos Repository o Fetcher, pero siempre en la infraestructura :) Respecto a todo lo otro que comentas, son temas que hemos tratado en los cursos de DDD en PHPP y DDD en Java :) Un saludo!!
Vídeo súper interesante , ojalá subas más material de Clean arquitecture y hexagonal , quizás montando un proyecto de 0 y demás , muy buena edición igual ❤
Gran video muchas gracias. Automáticamente añadido a mis favoritos. Una pregunta y si quisieras, por poner un ejemplo, saber todos los productos relacionados con un usuario (carece de sentido pero bueno) cual sería el flujo??. Y lo del módulo compartido suena interesante.
Hacen muy buenos videos y cursos. Otros se enfocan en enseñar en el "qué usar" para crear software como lenguajes. Ustedes enseñan el "cómo debe ser" el crear software sin importar el lenguaje.
Que tal, muy buena explicación de la arquitectura, y muy clara de entender, pero si me surge la duda sobre lo que llaman compartida (shared), cuando hay dependencias de entidades como seria la mejor manera de resolver que por ejemplo, cuando un usuario necesita esta relacionado por ejemplo a cursos, por el rol de estudiante
Saludos, desde Colombia, muchísimas gracias por el contenido, está muy interesante y me aporta mucho como desarrollador. Dos peticiones, sí me gustaría saber más del módulo compartido (shared), y la otra petición, ¿tiene un sección para donaciones?
Hola Rafa, muchas gracias por toda la información que nos brindas. Tengo una duda relacionada y ojalá me puedas ayudar. Que pasa si llego a necesitar algo de usuarios en producto como un servicio o simplemente acceder a la entidad, ¿Cómo hago?, ¿paso lo que necesito de usurios a shared?. Saludos.
Entraría en juego conceptos como las proyecciones y los eventos de dominio, para así tener una aplicación desacoplada y escalable. En el vídeo que hagamos sobre el Shared trataremos el tema!! Un saludo :)
Me gustaría que hablarais más sobre la parte de share. Yo ahí metía los VO de UserId etc. Luego también ver me gustaría cómo tratáis la comunicación entre dominios, o si tenéis replicada una entidad en varios dominios. Por ejemplo, un User en el dominio de Invoices no significa lo mismo (ni tiene la misma info o funcionalidades) que un User del dominio de Product.
Joder muy interesante el vídeo. Voy a intentar buscar un ejemplo concreto de su uso en Django porque no me queda claro hasta qué punto dejan de tener utilidad las abstracciones que provee el framework cuando queremos reemplazarlas por un enfoque como el que comentas.
mola mucho que hagan referencia al frontend en la intro, pero creo que sería muy beneficioso para la comunidad el mismo ejemplo pero con frontend por ejemplo con react.
¡Por fin hemos hecho el vídeo hablando del Shared! 😬👉 ua-cam.com/video/AR-Ik7jnBSk/v-deo.html
gracias
👏 Bravo! el primer video en muchos años donde explican de forma clara arquitectura limpia, de verdad que buen video!
Video dé maríbel vasqúéz
Muchas gracias por esta clase de videos. Llevo muchos años trabajando con proyectos que están hechos de "aquella manera" y que debíamos evolucionar y esta clase de vídeos me está ayudando a reciclarme, aprender cómo se debe trabajar correctamente y me ayudaran a encontrar un mejor trabajo y salir del pozo en el que estoy
Felicitaciones, tanto dar vueltas por internet buscando videos sobre la arquitectura hexagonal, este ha sido el mejor, explica todo de forma entendible y en poco tiempo. Seguir adelante, seria interesante si hacen algun acercamiento a golang. Saludos
Es el primer vídeo el cual explica correctamente la arquitectura de software, te has ganado con este video mi like y suscripción.
Gran forma de explicarlo, de las más claras y mejor argumentadas que he visto. La carpeta shared es la clave para no repitir el mismo codigo en todas las ramas. Me gustaria ver la solucion propuesta cuando algun componente es comun a varias ramas pero no en otras, donde ubicarlo y porqué. Desde siempre me "chirria" el tener una interfaz en el dominio que me conecte, aun sin acoplamiento, a la estructura, quizas porque yo lo planteo como diferentes capas de controllers, unos trabajando con peticiones y otros con infraestructuras externas como la persistencia. Saludos!
Excelente video!! No puedo creer que ya exista gente que conozca esto. Cuando hablo de la arquitectura hexagonal todos me ven con cara de loco.
llevo tiempo trabajando así, y es increíble como algo tan simple como organizar bien las carpetas ayuda a mejorar el rendimiento de un equipo, hace años teníamos todo separado por capas y era muy difícil integrar nuevos colegas, luego cambiamos a separar por entidades/conceptos y se integra más fácil un nuevo programador
A 3 años de tu comentario, qué tal ha continuado el approach? lo sigues usando? como ha escalado?
Acabas de hacer el vídeo donde se explica Clean Architecture de la forma más entendible que he visto en todo internet. Felicidades! 💪
Y mentiras no son, yo tambien me la pase como 1 semana haciendo una investigacion, abordando terminos tecnicos y todo, y ya creia tenerlo claro pero a la vez con dudas, y vengo y veo esto y de una se me aclaro la mente.
Peaso video. Se lo pienso poner a todos mis compañeros para que vean hacia donde debemos tirar. Ya tenia muy en mente la arquitectura Hexagonal pero gracias a este MiniEjemplo se me han aclarado infinidad de dudas. Y la organizacion de paquetes/carpetas, de 10!
Excelente explicación. Me encanta el espíritu con el que lo explican todo, energía y cero aburrimiento. No conocía el canal, pero recién lo descubro y me he visto varios videos de un saque. Felicitaciones!!!
Recuerdo hace un tiempo atrás, presentarle esta arquitectura a un profe en la uni.. Tenia un ejemplo hecho en Spring y lo llame para mostrarle lo fácil que era de leer, y simplemente me dijo "Si me presentas algo así, te pongo un uno".
Que se vaya a tomar por saco seguro es un boomer
¿No dijo el porqué del 1?
Jajaj yo también tuve un profe imbecil en la uni, nos pidió hacer un sistema contable como proyecto final en .net, yo tenia todo altamente desacoplado con código muy legible en 3 capas y un compañero le toco hacer el misml proyecto pero metiendo todo el código espageti en una clase main con muchas queries sql duplicadas y dijo que mi proyecto estaba mal porque se veía muy simple y me puso 7 y que lo debí ver hecho como mi compañero porque hizo mucho codigo y a él le puso 10, es la gran diferencia de solo ser profesor y nunca ver trabajado profesionalmente, actualmente mis ingresos son 5 veces mayores que el de mi compañero gracias a ser simplista
Excelente aporte, justo estaba restructurando el scaffolding de un app con node y graphql a la cuál le había planteado una arquitectura Role-Based (Laravel) a algo mas como lo que mencionas, sin embargo estoy mas familiarizado con términos como Providers, Services, Repositories, Models para dividir las diferentes capas. Agradecido con el video puesto a que no soy nada experto en el tema y ver ejemplo sirve de mucha ayuda.
te gustaría probar Nest.js entonces :D
Excelente bro!!! Al fin gente buena que no inducen a malas prácticas en sus vídeos y rompen el esquema del típico "Hello world." y/o enseñanzas de una tecnología en particular para enseñar buenas practicas, principios y propagar los grandes esfuerzos de los grandes artesanos del software!!!
Muchísimas gracias ☺️!! 💪💪💪
@@CodelyTV 😂😂😂😂 "Javi y Rafa" Los avengers del Clean Code!
Que lindo haberme topado con ustedes en mí formación. Los admiro, mentores. 👏🏻👏🏻
Increiblemente bien explicado!!!! En 10 minutos me ha quedado clarisimo!!! Congrats por el video!
Vi los primeros videos del tema y me ayudaron mucho a mejorar mis productos, a conocer conceptos y referencias, señores muchas gracias, genial el trabajo que hacen, ya me escribí a la plataforma y parezco un niño en dulceria ..... por cierto sería genial videos y su respectivo curso de eventstorming, la descubrí hace poco y aunque la estoy aprendiendo por mi lado, sería un gran complemento para su serie de arquitectura y en especial para el trabajo que están haciendo con ddd .... en fin gracias muchachos
Muchas gracias y apuntado todo el feedback!! 😊
Empeze hace casi 1 año a trabajar con Angular, en un principio me costo aprenderlo, por el tipado de ts y las dependencias, pero he desarrollado en un 80% (progresivamente)siguiendo el esquema de clean architecture, sin darme cuenta, joder! Para mi Angular mola mucho en cuanto a escabilidad y clean architecture.
Que buena nota compas. Cosas así marcan la diferencia entre ser simple coder y ser un real problems solver. Y explicado de una manera super chévere. Estoy iniciando el cambio de carrera, y con esto confirmo que pensar en software es una cosa más pictórica; más figuras que líneas de comandos. Gracias cracks. Suscrito. 🤙🏼
La han clavado! Excelente! Mezclado con patrones de diseño... el santo Grial! :)
Tremendo video que explica bien estos conceptos de Arquitectura Limpia sin ir de frente al codigo
Alfin encuentro a alguien que me entienda, wao que bien. Sigue adelante muchacho.
Brutal!, gracias gracias!, yo buscando una buena explicación por todos lados esta semana y mira lo que saca rafa ❤! felicidad es mi segundo nombre ahora 🤣🤣🤣🤣🤣
Jajajajajaja, me alegro mucho!!! Ahora a aplicarlo 💪💪💪
Qué buen video, llevo varios días tratando de encontrar un material como éste y cada quién lo explica desde enfoques meramente hexagonales o prácticos pero sin mostrar el por qué, ni de forma dinámica como se enseña acá, muchas gracias! me gustaría ver el de shared!
Genial explicado!!!! Ya me hice los cursos de Hexagonal, pero voy a reflotar mis apuntes y a meter este video porque es mucho mas claro, maravilla!!! Mil gracias. Por cierto.... VTyledoC a etebírcsuS
Oleeee!! 😂😂😂😂 aniram al ne etatsilA!!!!!
Lo implementé hace años con laravel y la verdad mediante los collect de laravel y clean architecture es una maravilla.
🤔 ¿Conocías las Clean Architectures?
que bien explicado!!! 👏👏👏 da gustico ver una estructura de carpetas tan bien organizada.... por no hablar de la facilidad para escalar!!!
La verdad que no, interesante, a veces en proyectos muy grandes me lio mucho.
El problema es que la comunidad de desarrolladores se ha pasado los ultimos 30 años cambiandole el nombre continuamente a los viejos conceptos, con la buena voluntad de matizarlos y actualizarlos, pero al final cambiandoles de nombre continuamente. Es duro aprender conceptos cuando cada nuevo libro sobre desarrollo los renombra. Ports & Adapters es una aplicacion del viejo patron estructural Adapter, donde una interfaz nos abstrae de la implementacion concreta de otro sistema, eliminando todo acoplamiento.
O al ser mas genérico que ese patron Adapter, tambien se podria acabar implementando como una fachada, patron Facade. Entonces... al dar nuevos nombres se empieza a complicar la asimilacion. El verdadero reto es unificar conceptos quedandonos con los bàsicos, estableciendo una denominacion y respetandola cuando se tengan que crear nuevos conceptos.
Ya conocia, pero no sabia que se les llamaba asi especificamente jajaja Primera vez que veo un video tuyo, muy buena produccion y la explicacion tambien! +1Sub Espero el video de modulos compartidos, me vendria muy bien. Me cuesta entender las ventajas cuando tenes clases del modelo que necesitan tambien estar entre capas (nose si serian dto u otra cosa)
Voy a comprar su curso, ya he estado intentando implementar clean architecture, muchas cosas han mejorado y todo va respaldado por tests pero aun siento que falta mucho para que sea ampliamente escalable, buenos videos. Saludos
Es una suscripción mensual para mí limitado país es imposible pero siempre podemos verlos por UA-cam u_u
Te amo! maravillosa gestión de carpetas! te ganaste un suscriptor
Dios... por estas fechas me hablaron de DDD y arquitectura hexagonal, lo quería aplicar a un software pero no tenia ni idea de como empezar!!! gracias!! julio 2021 comete a mayo 2020
Super interesante, entendí full! Yo me estoy haciendo un curso de DDD pero en UDEMY! quizás reforce en Codely
Me gusto mucho este formato de video, aprendí bastante para darme una idea de que trata arquitectura hexagonal, ya veo porque la mencionan mucho en este canal🤙😎
Pd: soy el like número 100 jajaja
Oleeee 😂😂😂 Muchísimas gracias!!
@@CodelyTV una pregunta, espero no quite mucho tiempo, en contexto estoy por iniciar un proyecto en react, ¿Se puede aplicar esta arquitectura? A grandes razgos como se imaginan que se logre aplicar (para darme una idea y tener un punto de partida a investigar)
Casi me voy cuando dijiste “las arquitecturas también son de mobile y frontend” pero bueno me quede y resulto ser un video muy provechoso. Excelente explicación
Esa organización de carpetas es básicamente por componentes, se puede aplicar tanto en arquitecturas limpias como en el MVC. La programación por componentes permite una alta cohesión y un bajo acoplamiento, siempre que los componentes ofrezcan y consuman servicios de otros componentes solo a través de interfaces, que creo que sería la capa de aplicación en esta arquitectura. ¡Genial el video!
Tienes una forma de explicar con visuales y en sencillo que me han ayudado mucho para comenzar a trabajar en ello, muchas gracias por este video, nuevo suscriptor al barco
Desde ya me tomo la tarea de buscar más info en tu canal, saludos y buena vibra
Que videazo te has marcado no??!! 👏🏻👏🏻👏🏻 La verdad es que siempre me ha parecido muy top vuestra propuesta de estructura de directorios. De un vistazo entiendes todo el contexto.
Veis viable una transición progresiva entre la propuesta del libro de DDD en PHP y la vuestra? Porque me imagino un caos bastante loco, pero en aplicaciones grandes hacer el cambio de golpe también lo veo difícil.
Algún consejo o experiencia?
Un abrazo!
Muchas gracias, Laura :)
Es totalmente posible, aunque mientras dure la transición todo queda un poco raro. O sea, tener las carpetas:
├── Application
├── Domain
└── Infrastructure
E ir añadiendo por allí los nuevo módulos que se vayan sacando/se muevan (aplicando la regla del boy scout)
Entonces, temporalmente (mientras dura el proceso de migración, que puede ser un tiempo) quedaría algo como:
├── Application
├── Domain
├── Infrastructure
├── Product
└── User
Que se ve feo y ralla, pero es la mejor forma que hemos ido viendo de hacerlo. También cabe decir que es un refactor facilito de hacer (ya que sólo es mover clases) y que seguramente hasta con herramientas como github.com/rectorphp/rector se puede llegar a automatizar.
Un saludo!! :)
Me gusta. Me interesaría ver el de C#. Ya que en .NET se suelen distribuir en diferentes proyectos las capas. Tenes en un proyecto la infra, en otro la app y entro el dominio (cosa que me gusta bastante). Por lo tanto a esto lo veo de la forma, segun el video, "por tipo y quien eres"
Tienes este repositorio una implementación de Clean Architecture en C# con .Net Core en la que yo me he basado para realizar ya algún proyecto y estoy muy contento. github.com/jasontaylordev/NorthwindTraders en el repositorio también encontrarás enlaces a más documentación y a un vídeo en el que explica el por qué de esa arquitectura.
@@jasalvador Muchas gracias por compartirlo.
Genial explicación! Muchas gracias por este vídeo. Dan ganas de mirar el curso… :)
Muy claro como lo hacéis habitualmente!. Me gustaría conocer lo de la carpeta shared ;)
Excelente vídeo, muy muy útil, muchas gracias por los aportes tan grandes y geniales a la comunidad. Me queda la duda de cómo se manejaría la capa trasversal?.
Me interesa saber más sobre el modulo compartido :d
No sabía mucho del tema, pero justo estaba organizando algo en un proyecto de Angular y terminé llegando a la misma conclusión.
Hola que super video, llevo mucho tiempo con Laravel y siempre he querido montar una buena infraestructura, seria genial que hiciera un curso pero directamente con Laravel de DDD, se que tendrán mucho éxito por que es el framework del momento en php.
Saludos
Lo tenemos en la lista de posibles cursos a hacer!! Le damos un +1 ☺️
CodelyTV - Redescubre la programación
Estaré en primera fila cuando lo lancen 💪🏼💪🏼
Rafa muy interesante pero es que además lo has explicado genial, me he enterado de todo.
Muy bien explicado!, queremos más detalles sobre el concepto SHARE!!!! graciassss
Te toca explicar Shared :)
Explicas súperhiperpega bien!. Muchas gracias jóven!
De lujo la explicación muy buena y además viene acompañado de conceptos muy bien pulidos muchas gracias por el aporte en verdad
Uno de los mejores videos que he visto tech sin duda alguna!
¡Muchísimas gracias, Victor! 😊😊😊😊
Muy top!! video sobre el directorio shared! 🙌 ¿Hay una taza con una llama?
Jajajajajaja, siiiii del Machu Picchu 😬
.
Aunque también me trae recuerdos del Winamp xD
Este video me voló la cabeza! Excelente contenido! 🤯
Yo había trabajado con ello pero no entendía del todo, gracias por el excelente vídeo amigo, saludos.
Excelente demostración y explicación! me gustaría saber mas, sobre la carpeta Shared, Como compartir entre módulos del dominio? Ejemplo si tengo una relación entre dos entidades, como lo haría?
Saludos!
Apuntado para explicar en ese vídeo!! :)
@@CodelyTV Excelente! llevo programando en php desde 2014 y gracias a sus videos, puedo decir que mejorado al 150% todo lo referente a arquitectura en mi forma de programar, como dicen allá, sois unos cracks!
Muchísimas gracias!! A seguir así 💪💪💪☺️
Una joya tu video amigo, muchas gracias por compartir !
Muchas gracias! Excelente explicación. Necesitaba ese golpe de realidad 😂
Toma tu like y tu suscripción por explicar tan claro y bien todo !! Mil gracias por compartir tu conocimiento.
Muy interesante el DDD, explorando el repo de Java encontre que el repo de SOLID, sería bueno den una ojeada al libro de arquitectura limpia de Uncle Bob hace unas aclaraciones muy buenas, sobre todo que la "S" de Single Responsability NO significa que una clase deba tener una sola responsabilidad o peor aún que solo tenga un metodo. Saludos y buenas vibras.
EnhorabuenaMuy buena forma de comunicación me suscribo!!
Gran video, es difícil encontrar este tipo de material en español y con tal calidad . Muchas gracias! 👏👏
Que genialidad de arquitectura, me encanto mucho, seria genial que hagas un ejemplo con nodejs !!!
Este chico es brillante buena explicación
Por fin alguien que me entiende, a mi tampoco me gusta la estructura de code de laravel, me parece muy "extravagante" y te pierdes fácil.
Muy buen video. Una pregunta: Por Dominios te refieres a entidades? O un dominio puede tener varias entidades? (Ej. domain user -> entities: user, role, etc
Muy buen video, gracias.
Me gusta más el tema de Quien eres y Que Tipo, separado en microservicios con responsabilidad unica.
Cuanta falta hacían estos vídeos Rafa, con todo respeto, los últimos también habrá a quien le guste, qué cómo hacer mis dotfiles, que cómo mejorar mi shell... Pero al final, los de más impacto en la calidad del software son estos. Gracias
¡Todo es necesario! 😂 A mí, personalmente, me hubiese encantado conocer todo estos temas de los dotfiles hace 10 años (me hubiese ahorrado mucho tiempo). Como norma general hacemos los vídeos que nos hubiera gustado ver :)
Saludos!
Excelente video, entendí algunas cosas, tendré que verlo de nuevo, soy programador Junior y me cuesta un poco todavia entender todo este tipo de cosas, estoy acostumbrado al MVC.
Muy buen video, actualmente estoy migrando mi proyecto a DDD basándome en este mismo repository de github, no eh implementado todo y ya se notan los beneficios, es mucho mas simple hacer las pruebas. Se agradece todo lo que comparten, 👍. Estaría genial ejemplos de generic repository, query by criteria, data mappers, como organizan todo eso? También tengo unas dudas sobre si todo los objetos externos se obtienen por medio de repository, por ejemplo peticiones http a servicios externos, usan application service o repository?
A tu última pregunta utilizamos Repository o Fetcher, pero siempre en la infraestructura :)
Respecto a todo lo otro que comentas, son temas que hemos tratado en los cursos de DDD en PHPP y DDD en Java :)
Un saludo!!
Muy interesante el tema! Muchas gracias y si me encantaría ver el tema de la carpeta shared estaré pendiente 👍🏻
Vídeo súper interesante , ojalá subas más material de Clean arquitecture y hexagonal , quizás montando un proyecto de 0 y demás , muy buena edición igual ❤
Gran video muchas gracias. Automáticamente añadido a mis favoritos. Una pregunta y si quisieras, por poner un ejemplo, saber todos los productos relacionados con un usuario (carece de sentido pero bueno) cual sería el flujo??. Y lo del módulo compartido suena interesante.
Entraría en juego conceptos como las proyecciones y los eventos de dominio, para así tener una aplicación desacoplada y escalable. Un saludo!
@@CodelyTV hola muchas gracias por buenísima explicación, seria posible que pudieses profundizar más en estos temas que mencionas. Gracias 💪
Hacen muy buenos videos y cursos. Otros se enfocan en enseñar en el "qué usar" para crear software como lenguajes. Ustedes enseñan el "cómo debe ser" el crear software sin importar el lenguaje.
Me encanta esa estructura
de las mejores que he visto
Muy fino 👌 Sobretodo la explicación en el board con event storming 😁
Otro nivel, bravo!!! y gracias por la excelente explicación. 😃
Lo máximo... super claro... voy a probarlo en java!😬
Hola Rafa! vídeo de módulo compartido por fa, es justo y necesario. Gracias
Que tal, muy buena explicación de la arquitectura, y muy clara de entender, pero si me surge la duda sobre lo que llaman compartida (shared), cuando hay dependencias de entidades como seria la mejor manera de resolver que por ejemplo, cuando un usuario necesita esta relacionado por ejemplo a cursos, por el rol de estudiante
Vídeo de la carpeta "Shared"! Por favor. Excelente vídeo! Mas vídeos así, por favor!
Me ha encantado el vídeo :) Esto me recuerda al dilema clásico de clasificación. ¿Cómo ordenarías estas figuras de colores de distinto tamaño?.....
Muy buena comparativa!! (Y apuntada por si hacemos otro vídeo del tema) todo lo que la respuesta sea "depende" siempre da que pensar 😊
Hola, buen video, gracias. Una pregunta, los mappers (dto to entity o al revés) en que capa debería ponerlo ?
Saludos, desde Colombia, muchísimas gracias por el contenido, está muy interesante y me aporta mucho como desarrollador.
Dos peticiones, sí me gustaría saber más del módulo compartido (shared), y la otra petición, ¿tiene un sección para donaciones?
Apuntado queda!!
No tenemos nada para donaciones, pero si te interesan estos temas tenemos nuestros cursos disponibles en pro.codely.tv ☺️
Un saludo!!
Justamente cuando comienzo a emprender mi camino hacia temas de arquitectura 😍🤓
Hola Rafa, muchas gracias por toda la información que nos brindas. Tengo una duda relacionada y ojalá me puedas ayudar. Que pasa si llego a necesitar algo de usuarios en producto como un servicio o simplemente acceder a la entidad, ¿Cómo hago?, ¿paso lo que necesito de usurios a shared?. Saludos.
Entraría en juego conceptos como las proyecciones y los eventos de dominio, para así tener una aplicación desacoplada y escalable. En el vídeo que hagamos sobre el Shared trataremos el tema!! Un saludo :)
@@CodelyTV muchas gracias por tu respuesta, espero con ansias el vídeo de shared. Jejeje
Buen video, bien explicado.
Lo unico es que a mi personalmente de me hace un poco dificil leer ese tipo de letra 😅.
Pero buena calidad de video :).
Me gustaría que hablarais más sobre la parte de share. Yo ahí metía los VO de UserId etc. Luego también ver me gustaría cómo tratáis la comunicación entre dominios, o si tenéis replicada una entidad en varios dominios. Por ejemplo, un User en el dominio de Invoices no significa lo mismo (ni tiene la misma info o funcionalidades) que un User del dominio de Product.
Muy buen vídeo, muchas gracias :)
¿Se llegó a hacer el vídeo de shared?
Video sobre la carpeta shared por favor! Excelente video
Interesantísimooo!! En cuanto a nombramiento de carpetas... que estándares me recomiendan seguir?? Utilizo NodeJS...
Gracias por el vídeo. Muy buena explicación.
Magnífico trabajo. Más vídeos así!!
Joder muy interesante el vídeo. Voy a intentar buscar un ejemplo concreto de su uso en Django porque no me queda claro hasta qué punto dejan de tener utilidad las abstracciones que provee el framework cuando queremos reemplazarlas por un enfoque como el que comentas.
Oleee!! Si te sale algo que te guste no dudes en comentarlo y le echamos un ojo!! ☺️
Por favor hagan el curso de Clean Arquitecture y el de DDD con Javascript o Typescript
El de DDD en TypeScript quizás en un futuro no tan lejano lo verás 😊
mola mucho que hagan referencia al frontend en la intro, pero creo que sería muy beneficioso para la comunidad el mismo ejemplo pero con frontend por ejemplo con react.
Muy bien aporte! Excelente explicación
Buena explicación Rafa
Excelente video! Mas claro para donde, gracias!
Muy bien explicado. Saludos.
Excelente vídeo y explicación
Visto en 02/12/2022
He tenido que hacer aplicaciones reales en mi trabajo para por fin entender por qué se diseñó así la arquitectura hexagonal y DDD.
Es este tipo de estructuras donde irían las interfaces? ya sea de repositorios o casos de uso o incluso controllers?