Hexagonal Architecture VS Clean Architecture ðŸĨ·

āđāļŠāļĢāđŒ
āļāļąāļ‡

āļ„āļ§āļēāļĄāļ„āļīāļ”āđ€āļŦāđ‡āļ™ • 51

  • @gentlemanprogramming
    @gentlemanprogramming  8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +5

    🚀 Espero que disfruten de este video
    👍 Si encuentran Útil el video, no olviden darle like y compartirlo con amigos o
    colegas que tambiÃĐn podrían beneficiarse. Cada like y cada compartida realmente
    ayudan al canal a crecer y me motivan a seguir creando contenido de calidad para
    ustedes.
    🔔 ÂĄSuscríbete al canal y activa la campanita para no perderte ningÚn video
    nuevo. ÂĄEstoy aquí para ayudarte a mejorar tus habilidades y hacer tu vida de
    desarrollador un poco mÃĄs fÃĄcil!
    💎 DÃĐjame saber en los comentarios quÃĐ parte del video te fue mÃĄs Útil y quÃĐ
    otros temas te gustaría que explorÃĄramos juntos.
    ÂĄGracias por ver y apoyar el canal! Juntos, podemos hacer que nuestra comunidad
    de programaciÃģn sea aÚn mÃĄs fuerte. 🌐

    • @gustavovelazquez8272
      @gustavovelazquez8272 7 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +1

      hola. solo un comentaio personal: molesta cuando estas escribiendo que detras apareza el pre-escrito, en mi caso automaticamente sigo leyendo lo que se va viendo y dejo de escucharte.

    • @gentlemanprogramming
      @gentlemanprogramming  7 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

      @@gustavovelazquez8272 perfecto ! Voy a ver que puedo hacer, por las dudas es un auto completado por parte de SuperMaven, una alternativa a Copilot. Gracias por la sugerencia !

  • @hernanarica6389
    @hernanarica6389 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +9

    Tremendo! Apoyo una banda el contenido sobre arquitecturas

  • @santiago-lorduy
    @santiago-lorduy 5 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +1

    Excelente contenido!, me estaba matando la cabeza de con cual empezar o que difererencias tienen y con este video quede mas que claro, muchas gracias! :D

  • @programmingj613
    @programmingj613 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +4

    Banco mucho estos tipos de videos. Para los que quieren saber libros los dejo aca porque los vi en uno de los comentarios:
    - Clean architecture de uncle bob
    - Hexagonal architecture de alistair cockburn

  • @edu235edu
    @edu235edu 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +3

    Adapters !!! Hace tiempo te escuchÃĐ explicarlo , y me acordaba de la idea , pero no del nombre! Excelente material. Como siempre

  • @LuisAtencia-xk8vu
    @LuisAtencia-xk8vu 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +4

    Saludos Bro, me gustan tus videos, yo cuando me veo en la obligaciÃģn de usar una arquitectura donde sea fÃĄcil darle mantenimiento y escalar aplicÃģ las siguientes capas
    Dominio(Definiciones del negocio)
    Application (casos de uso)
    Infrastructure(comunicaciÃģn con bd y servicios externos)
    Persistente
    External
    PresentaciÃģn(controllers)
    Con todo bien aplicado cambiar cosas se vuelve muy sencillo, digamos que quiero cambiar de orm, con cambiar par de interfaces y 1 clase ya cambie el orm y lo demÃĄs ni se entera, todo queda igual

  • @estebansoto6486
    @estebansoto6486 3 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +1

    Excelente video, me molesta no saber lo que estoy haciendo, desde hace rato vengo programando sin saber si estoy aplicando alguna de estas arquitecturas o hasta quizÃĄs las estuve mezclando jajaja

  • @yahireduardobravotafur5118
    @yahireduardobravotafur5118 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +1

    Capitulo MAGNIFICO, UFFF P E R F E C TO.
    Muchas gracias caballero, un abrazo.

    • @gentlemanprogramming
      @gentlemanprogramming  8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

      De nada caballero !!

  • @adanpalma4026
    @adanpalma4026 6 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +1

    Man tu contenido esta super. EspaÃąol, moderno, eres un excelente docente mantiene a uno siempre concentrado. Gravcias.
    Ah se me pasaba. Que ese teclado quebtienes? Donde se puede ver?

    • @gentlemanprogramming
      @gentlemanprogramming  6 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

      @@adanpalma4026 muchísimas gracias !!! Lo puedes ver aquí !
      Glove 80
      th-cam.com/play/PL42UNLc8e48QrvPqdnyYNTk7PGxTKwxD2.html

  • @rutx122
    @rutx122 28 āļ§āļąāļ™āļ—āļĩāđˆāļœāđˆāļēāļ™āļĄāļē +1

    Un proyecto grande, bastante grande se puede organizar con hexagonal architecture pero separada por modulos?
    Osea algo asi:
    compras/domain
    /application
    /infrastructure
    noseotro/domain
    /application
    /infrastructure
    Ya que el proyecto puede llegar a tener distintas base de datos, unas 2 o 3, entonces crees que sea buena idea ejecutar el proyecto de esta manera? con Expressjs.
    O que harias tu?

    • @gentlemanprogramming
      @gentlemanprogramming  28 āļ§āļąāļ™āļ—āļĩāđˆāļœāđˆāļēāļ™āļĄāļē +1

      @@rutx122 perfectamente, se puede aplicar ddd, clean architecture y demÃĄs. Una no quita a la otra

  • @eliezerfuentes9770
    @eliezerfuentes9770 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +12

    Puedes hacer un video explicando la arquitectura DDD por favor

    • @tipo_deincognito
      @tipo_deincognito 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +10

      No es una arquitectura, es mÃĄs una forma de gestiÃģn y exploraciÃģn del dominio (negocio), lo que se conoce como la parte estratÃĐgica de DDD.
      Por otro lado tenemos la parte tÃĄctica, que nos propone una serie de patrones con los que aterrizar la estratÃĐgica, pero nunca una arquitectura concreta.
      Aunque DDD no conlleva ninguna arquitectura en concreto, se lleva bien con las "clean architecture" al facilitar la expresiÃģn del dominio explorado mediante las tÃĐcnicas de la parte estratÃĐgica de forma "aislada" de los detalles de implementaciÃģn que no son negocio puro (bbdd, frameworks, libs, motores de bÚsqueda, la UI...).
      Las arquitecturas limpias (Clean Architecture, Hexagonal...) no son arquitecturas, algo que se explica en el post de un blog (Hexagonal) no puede ser una arquitectura. Son metÃĄforas que simplifican y facilitan comprender una forma de gestiÃģn y organizaciÃģn de la complejidad del cÃģdigo de una aplicaciÃģn.
      La arquitectura en realidad que proponen.... No deja de ser MVC, tal y como Jacobson la extrapolÃģ del mundo de las interfaces grÃĄficas a la organizaciÃģn del cÃģdigo general de una aplicaciÃģn.
      Si utilizas MVC aplicando Liskov y Open Closed principle (mediante DIP y ISP de solid por ejemplo), te queda algo igual que Hexagonal/Clean: entidades y servicios que expresan la lÃģgica del dominio y que se aíslan mediante abstracciones (interfaces) y paquetes (namespaces, packages, capas....) del cÃģdigo mÃĄs cambiante y "accesorio" (casos de uso y, sobre todo, infraestructura).
      Clean o Hexagonal no son mÃĄs que simplificaciones y mapas mentales que nos simplifican la vida, ayudÃĄndonos a conseguir una mejor intuiciÃģn de como aplicar ese MVC + Liskov + Open Closed Principle en el día a día.

  • @Deus-lo-Vuilt
    @Deus-lo-Vuilt 7 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

    Otro buen video âĪ

  • @vfxjorge
    @vfxjorge 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +1

    excelente explicaciÃģn

  • @nico6346
    @nico6346 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +1

    Creo que estamos en el momento ideal para que cuentes un desafio tuyo a cargo de un proyecto o como dev que te haya demandado mucha concentracion y planificacion, hacenos creer que sos humano, sabes demasiado 😅

    • @gentlemanprogramming
      @gentlemanprogramming  8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +1

      MÃĄs que saber mucho me he topado con muchos problemas que tuve que resolver y vengo a contar experiencias. Pero todavía quedan muchos mÃĄs problemas para resolver y es lo lindo de todo

    • @nico6346
      @nico6346 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

      @@gentlemanprogramming enseÃąanos tu truco entonces para no quedarnos pelados en el camino 😅

  • @estephaniacalvocarvajal594
    @estephaniacalvocarvajal594 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

    Lo explicas genial muchas gracias 🎉

    • @gentlemanprogramming
      @gentlemanprogramming  8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

      Gracias a ti por tu mensaje ðŸĨ°

  • @alanrosales5020
    @alanrosales5020 13 āļ§āļąāļ™āļ—āļĩāđˆāļœāđˆāļēāļ™āļĄāļē +1

    Good

  • @alvaronieto1779
    @alvaronieto1779 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +2

    Donde se puede estudiar mas sobre este tema. Doc, paginas, problemas ,etc. Por donde arrancar? Gracias y muy buena la explicacion. Esto lo ven en la carrera de Ingeniero en Shoftware?

    • @gentlemanprogramming
      @gentlemanprogramming  8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +3

      Leer mucho ! Clean Architecture de Uncle Bob, Hexagonal Architecture de Alistair Cockburn o tienes mis dos playlist que explico todo sobre el tema :)
      Clean Architecture
      th-cam.com/play/PL42UNLc8e48TF9l07z_tLGHzmC_d-yfJJ.html&si=xfhEzBB8vCv2uJXU
      Hexagonal Architecture
      th-cam.com/play/PL42UNLc8e48RHavn_jKOfFcf5u73O-w14.html&si=kEfLJPUw2xJTOwvm

    • @alvaronieto1779
      @alvaronieto1779 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +2

      @@gentlemanprogramminggracias crack

  • @enzodossantos2546
    @enzodossantos2546 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +1

    Gracias Gentleman eres mi fan siempre que veo un vídeo tuyo lo veo

    • @gentlemanprogramming
      @gentlemanprogramming  8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +1

      Yes ! Si que soy tu fan con esos mensajes hermosos que tÚ me cargas 😘

  • @your_dev_joselow
    @your_dev_joselow 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +1

    Muy fino 👌

  • @richard3797
    @richard3797 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +1

    Buenas, para aclarar unos conceptos, clean architecture es una filosofía de sobre como deben ser las arquitecturas para ser mantenibles, extensibles y agnosticos a las tecnologías / frameworks.
    Onion Architecture es diferente a Clean architecture, Onion y Hexagonal SI son arquitecturas, y se suelen mencionar estos 3 conceptos juntos porque globalmente se tiene el concepto de que las mejores arquitecturas para implementar aquella filosofia es Onion y Hexagonal, es decir, no existe algo así como clean architecture y ya, es una filosofía que se aplica a tus arquitecturas, puedes aplicar Hexagonal con clean u Onion con clean o directamente no aplicarlo.
    Para conocer mÃĄs pueden leer Clean Architecture de Robert C. Martin, el fue quien introdujo el concepto aclarando que es una filosofía

    • @gentlemanprogramming
      @gentlemanprogramming  8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

      Es verdad que clean es una filosofía pero tambiÃĐn se puede aplicar como arquitectura muy fÃĄcilmente de la misma manera que puede aplicarse en el front / back / etc ya que la arquitectura perfecta es la que haces tÚ depende lo que necesites y puedes aplicar diferentes patrones recomendados. onion y hexagonal son diferentes a la clean pero lo que dije en el video es que son lo mismo en cuanto a los objetivos y unos son mÃĄs flexibles o estrictos que otros. Muy bueno el libro recomendado y tambiÃĐn estÃĄ su documentaciÃģn para ver los fundamentos de forma gratuita blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html

  • @carlosmollapaza9267
    @carlosmollapaza9267 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

    Vaya vaya, me he leido todo el libro de robert c martin clean architecture y lo aplico a diario, les dire que es muy amplio. Hexagonal es muy pequeÃąo a diferencia de clean, dentro de clean ya esta hexagonal.

  • @holamundo2233
    @holamundo2233 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

    Al final estas arquitecturas su propÃģsito es la separaciÃģn de responsabilidades , el bajo acoplamiento y alta cohesiÃģn , usando esto mÃĄs la inversiÃģn de dependencia se cumple con software Mantenible y escalable , en el front end usaría estas arquitecturas solo en aplicaciones híbridas donde hayan muchos clientes front (mobile, web,desktop) y que compartan el cÃģdigo de dominio

    • @gentlemanprogramming
      @gentlemanprogramming  8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +1

      No te creas, yo uso siempre la clean cuando puedo y tengo videos mostrando cÃģmo usarlas en el front ya que son principios aplicables en cualquier lugar

    • @holamundo2233
      @holamundo2233 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

      @@gentlemanprogrammingsi pero tu tiempo de desarrollo se multiplica y hay veces q no vale el esfuerzo y tambiÃĐn hay q tener un equipo q entienda y conozca y me ha pasado q los proyectos front donde he estado utilizamos BFF y al final nuestros front tratamos de q tengan el mínimo manejo de lÃģgica de negocio en el cliente , para mi es lo mÃĄs prÃĄctico , ahora trato de hacer el front lo mÃĄs tonto posible y q solo se enfoque en temas de Ux y cosas de front , por ahora me esta funcionando . Igual como dices hay q adaptar estos conocimientos a nuestra realidad y no tomarlo todo de manera exacta .

    • @holamundo2233
      @holamundo2233 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

      A mi me gusta usar clean arch pero hay q evangelizar y lidiar con la mediocridad muchas veces , llÃĐvame a tu team para usarla a tope 😁

  • @quicktutorial2761
    @quicktutorial2761 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

    Como andas gentleman? te consulto... en hexagonal, puertos vendria a ser dominio... y adapters vendria a ser capa infraestructura?

    • @gentlemanprogramming
      @gentlemanprogramming  8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +1

      No no, puertos son los contratos que limitan a los adapters y comunican el mundo externo (otros servicios) con el dominio.
      Puedes aprender sobre esto con mi playlist de hexagonal architecture !

    • @quicktutorial2761
      @quicktutorial2761 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

      @@gentlemanprogramming ok, entonces... cuando en codely por ej hablan de hexagonal utilizan carpetas "dominio" "aplicacion" "infraestructura"
      y a la vez vertical slice... user - y dentro estas carpetas por ejemplo... a eso me referia... y le llaman adapters por ejemplo a un api rest dentro de la carpeta infra

    • @gentlemanprogramming
      @gentlemanprogramming  8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

      @@quicktutorial2761 claro por eso, son puertos que establecen contratos para limitar los adapters y estos limitan lo que entra y sale del dominio, igualmente cada uno tiene una interpretaciÃģn diferente y puede poner las carpetas a su gusto siempre y cuando se cumplan los conceptos presentados por la arq

    • @gentlemanprogramming
      @gentlemanprogramming  8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

      Fíjate mi playlist de hexagonal ! Tengo tambiÃĐn un repo ahí linkeado con mis carpetas y todo de un projecto que tiene react, trpc y un backend en node con hexagonal arch
      Hexagonal Architecture🍕
      th-cam.com/play/PL42UNLc8e48RHavn_jKOfFcf5u73O-w14.html

  • @sanchezcarlos1986
    @sanchezcarlos1986 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +2

    Hexagonal

    • @gentlemanprogramming
      @gentlemanprogramming  8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +1

      Fixed

    • @sergiopietri5370
      @sergiopietri5370 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

      @@gentlemanprogramming LGTM [x] approve

  • @santiagoalaniz2375
    @santiagoalaniz2375 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

    que tal fredy mercury ahora en youtube

  • @carlosarturo1878
    @carlosarturo1878 8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™ +1

    eres un tremendo desorden en tus charlas, si puedes saber mucho no te quito pero no estructuras del todo tus videos

    • @gentlemanprogramming
      @gentlemanprogramming  8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

      Es una respuesta en vivo, en un stream, a una pregunta de la nada. Creo que lo hice demasiado bien :) porfa si no te gusto di que podría hacer para mejorar ! Así puedo hacerlo sino solamente es un comentario negativo. Muchas gracias !

    • @gentlemanprogramming
      @gentlemanprogramming  8 āļŦāļĨāļēāļĒāđ€āļ”āļ·āļ­āļ™āļāđˆāļ­āļ™

      Si quieres contenido previamente preparado sobre el tema fíjate mi playlist de hexagonal ! Tengo tambiÃĐn un repo ahí linkeado con mis carpetas y todo de un projecto que tiene react, trpc y un backend en node con hexagonal architecture
      Hexagonal Architecture🍕
      th-cam.com/play/PL42UNLc8e48RHavn_jKOfFcf5u73O-w14.html
      Y lo mismo para👷ðŸŧ‍♂ïļClean Architecture🧞
      th-cam.com/play/PL42UNLc8e48TF9l07z_tLGHzmC_d-yfJJ.html