Implementación de arquitecturas hexagonales

Поделиться
HTML-код
  • Опубликовано: 2 окт 2022
  • Implementación de arquitecturas hexagonales y ejemplo de una API Rest con Java, Spring Boot y PostgreSQL.

Комментарии • 137

  • @NullSafeArchitect
    @NullSafeArchitect  Год назад +52

    Aquí tenéis disponible el código de ejemplo del vídeo de esta semana sobre Arquitectura Hexagonal con #Java #SpringBoot y #PostgreSQL . Buen fin de semana -> github.com/acoronadoc/java-springboot-hexagonal-architecture-sample

    • @rickhunter8216
      @rickhunter8216 Год назад +3

      PROFE CON SPRING INITIALIZR ES MAS RAPIDO. SE NOTA QUE UD ES DE LA VIEJA ESCUELA. 🙂

  • @kaliduss
    @kaliduss 6 месяцев назад +4

    Simple, directo al grano y bien explicado. Muchas gracias!

  • @Jblanco1989
    @Jblanco1989 Год назад +1

    Que alegría verte de vuelta. Como siempre, otro vídeo de gran valor. Gracias por todo tu aporte y dedicación.

  • @tohno_shiki
    @tohno_shiki Год назад +1

    Muchísimas gracias por hacerte un tiempo a pesar de que ahora te cuesta más sacar espacio para esto, hacía tiempo que no veía nuevos vídeos por el canal, que bueno que lo vuelvas a retomar aún si ya no se puede al ritmo de antes. Me gusta mucho la forma en la que explicas, ayudándome mucho a entender algunos conceptos que me son nuevos, gracias desde Chile

  • @alexonxxx
    @alexonxxx Год назад +1

    Un placer volverte a tenerte por aquí! Muy buen video!

  • @EliberioSoftEC
    @EliberioSoftEC Год назад +1

    Me alegra tenerte de vuelta, siempre tutos de gran calidad saludos desde Ecuador

  • @pabloarancibia
    @pabloarancibia 8 месяцев назад +2

    Muchas gracias, es muy dificil encontrar contenido de esta calidad con casos prácticos. Esto tiene mucho valor para los que estamos aprendiendo arquitectura. Saludos!!!!!

  • @alxrlja
    @alxrlja Год назад +3

    Acabo de encontrar tu canal y estoy viendo los vídeos anteriores. Solo puedo decir que todos tus videos son oro puro. Tienes conmigo un seguidor más , veo que dejaste de subir durante un tiempo, espero no haber llegado muy tarde y que no desistas de crear estos videos tan buenos! Muchas Gracias por compartir tu experiencia con el mundo, y apenas tenga oportunidad, más que suscribirme, me unirme a tu canal.

  • @juansarm
    @juansarm Год назад +1

    Que bueno verte por aquí, grande. Saludos

  • @evapardeza1647
    @evapardeza1647 Год назад +1

    Albert, qué alegría volver a tenerte aquí! Muchas gracias!

  • @yonathangutierrez1733
    @yonathangutierrez1733 Год назад +1

    Me alegra volverte a ver de vuelta!

  • @angelmanuelcamarero9813
    @angelmanuelcamarero9813 Год назад +2

    Me alegra que vuelvas a publicar contenido, contenido bien explicado, que hace que quieras aprender más sobre lo que has hablado. Gracias.

  • @samuelsaldana1575
    @samuelsaldana1575 Год назад +1

    Excelente, no se nos pierda... Oportuno tema, como siempre... Saludos desde Panamá.

  • @centineladeisrael
    @centineladeisrael 11 месяцев назад +1

    Es verdad profe un poco de gente en RUclips que no saben de programación explicando lo que no saben , usted si sabe

  • @cgr4817
    @cgr4817 6 месяцев назад +2

    La mejor explicación práctica que he visto sobre arquitectura hexagonal. Muchas gracias!

  • @walterrodriguez2696
    @walterrodriguez2696 Год назад +2

    Albert, gran retorno con este video! se agradece mucho! . De ser posible hacer otro video más con arquitectura hexagonal. Saludos!

  • @Pablo-Ramirez
    @Pablo-Ramirez Год назад +1

    Felicitaciones Albert me alegro por tu nuevo video, como siempre muy bien explicado. Saludos.

  • @angelfornes4812
    @angelfornes4812 Год назад +5

    Encantado de volver a verte, yo creo que seria interesante repasar temas de monitorización (grafana, nagios, elastic...) y un poco de AWS. Muchas gracias por compartir

  • @13680seba
    @13680seba Год назад +5

    Volvió¡ Que bueno¡ Estoy aprendiendo mucho con sus videos¡ Usted esta muy adelantado a los temas y muy actualizado, dele tiempo a su canal y será millones¡ Desde Córdoba, Argentina todos los éxitos y gracias por tanto¡

  • @AndreySalas
    @AndreySalas Год назад +1

    Excelente, me alegra tu regreso.

  • @alextempra2026
    @alextempra2026 Год назад +1

    Gracias por todo el contenido interesante que se trata en tu canal, es de gran utilidad para los que nos iniciamos en el mundo laboral

  •  Год назад +7

    Se te echaba de menos. Gracias por este pedazo de vídeo. Como decías, las arquitecturas hexagonales se terminan tergiversando por la simplificación del concepto. Gracias al ejemplo lo tenemos más claro. Temas interesantes: patrones CQRS, Event Sourcing y Sagas. También estaría interesante explicar en una serie, algunos de los consejos más útiles del código limpio

  • @menietom
    @menietom Год назад +1

    Que alegría que vuelvas! mil gracias

  • @camilofernandez9542
    @camilofernandez9542 Год назад +1

    Como te extrañaba gran Maestro, aprendo de otros pero siempre vuelvo para aprender de ud.

  • @alonsodeviana6010
    @alonsodeviana6010 Год назад +1

    Que maravilla!días buscando documentación de la arquitectura hexagonal y en media hora me lo has dejado clarísimo!muchas gracias máster!!

  • @Fibri77o
    @Fibri77o Год назад +1

    Se te echaba mucho de menos. Qué alegría verte de vuelta!

  • @sergiocentenero
    @sergiocentenero Год назад +2

    Impresionante la forma de explicar la arquitectura hexagonal. Muchisimas gracias por tu explicación.

  • @crisswalt2
    @crisswalt2 Год назад +1

    Excelente, muy buen vídeo. Saludos cordiales desde Chile

  • @user-bk6lv9md6j
    @user-bk6lv9md6j 5 месяцев назад +1

    Me ha venido genial para entenderlo, gracias por existir!

  • @timberoable
    @timberoable Год назад +1

    vale la pena. Es cierto. Es usted un crack y mejor profesor.

  • @mjatmjatmjat
    @mjatmjatmjat 8 месяцев назад +1

    La mejor explicación que he visto hasta el momento. Excelente

  • @TheWilfrido
    @TheWilfrido Год назад +2

    Mi querido Albert tu canal me ha servido de mucho para repasar temas. Ojalá te animes en un futuro a hablar y demostrar cosas no tan conocidas o poco habladas, que se encuentran difícilmente en internet, como el tema de Kubernetes de hacer actualizaciones progresivas sin tiempo de inactividad del servicio "Rolling updates"...

  • @potnox
    @potnox Год назад +1

    que gusto verte de nuevo

  • @FranciscoOrtizC
    @FranciscoOrtizC Год назад +1

    Muy buena explicación y ejemplo. Muchas Gracias !!!!

  • @gmoqa1188
    @gmoqa1188 Год назад +1

    Se te echaba de menos, que gran sorpresa, buen video.

  • @GargaMelBodacho
    @GargaMelBodacho Год назад +1

    Me ha resultado muy útil, refactorizando un proyecto que supuestamente usan está arquitectura y la verdad es que me has aclarado bastante

  • @QKST117
    @QKST117 Год назад +1

    Buen video, justo en tema que ahora se me hace muy interesante. ❤

  • @d0bl3r
    @d0bl3r Год назад +2

    Me alegro de tu vuelta Albert!!! hace poco revise uno de los videos antiguos por una dudas y me sirvio de mucho.

  • @franciscoalanzavesromero4944
    @franciscoalanzavesromero4944 Год назад +1

    Gran programador y muy bien explicado el video......

  • @jacobgonzalez4746
    @jacobgonzalez4746 Год назад +1

    Excelente ejemplo me ayudó a acaparar muchas dudas sobre java/kotlin, muchas gracias

  • @miguelcuevas9514
    @miguelcuevas9514 Год назад +1

    Te felicito por tu trabajo. grandiosa y muy util explicación.

  • @GioNoris
    @GioNoris Год назад +1

    Ey me alegra verte de vuelta , gracias

  • @yamid-rc
    @yamid-rc Год назад +1

    Muchas gracias por compartir sus conocimientos para todos

  • @dannyjimenez182
    @dannyjimenez182 22 дня назад +1

    Gran video, muchas gracias!

  • @andresariascapurro
    @andresariascapurro Год назад +1

    gracias por compartir tu conocimiento y hacerlo de una forma sencilla y clara

  • @JesusKITT
    @JesusKITT Год назад +1

    Este contenido me ha servido para aclararme un poco más con un problema que estoy teniendo en el mismo caso de un proyecto de CRM para una tienda y no consigo desde mi proyecto con Springboot inserte datos utilizando Hibernate H2 tiene como registros customers, products, price...

  • @franmartin2758
    @franmartin2758 Год назад +8

    Me alegro de tu vuelta!!!

  • @user-qw5bt2xp3e
    @user-qw5bt2xp3e 9 месяцев назад +1

    Muchas Gracias, considero que este es un buen proyecto para aplicarle Vertical Slice

  • @SaulRincon
    @SaulRincon Год назад +1

    Muchas gracias por regresar (y)

  • @dspada1965
    @dspada1965 Год назад +1

    Se lo extrañaba por qui maestro, excelente video

  • @SkillTrailMalefiahs
    @SkillTrailMalefiahs 11 месяцев назад +1

    Increible explicación!

  • @gouki178
    @gouki178 Год назад +1

    Volviste Albert que bueno !!! Abrazo !!

  • @mateohuancho5497
    @mateohuancho5497 Год назад +1

    nuevo suscriptor, este es una joya, muchas gracias

  • @edgaralfonsopatroncoral3568
    @edgaralfonsopatroncoral3568 Год назад +1

    Despues de un año regreso el buen Albert saludos bro. gracias

  • @HoydejameDormir
    @HoydejameDormir Год назад +1

    Ya se lo extrañaba maestro!

  • @juanrebella2589
    @juanrebella2589 Год назад +2

    Gracias Albert!
    Abrazo.

  • @alesofton
    @alesofton Год назад +2

    Bravo!!!!

  • @demoel
    @demoel Год назад +1

    Qué bueno !!! Gracias a ti tengo mi página con certificado ssl .. lo recuerdo muy bien … no se desaparezcas amigo 😅..

  • @cesarram0s
    @cesarram0s Год назад +1

    Enhorabuena 👏!!!

  • @kajotaese-uu7qm
    @kajotaese-uu7qm 8 месяцев назад +1

    "Si no es fácil de testear no se está haciendo bien" me quedo mucho con esa frase.
    La gran mayoría de arquitecturas hexagonales en las que trabajé o no tienen test o tienen test que son complicados de mantener o abusan de mocks.

  • @biko8
    @biko8 Год назад +1

    Bienvenido!! 🚀 Buen tema!

  • @mirxtremapps
    @mirxtremapps 11 месяцев назад +1

    Excelente explicación!, apenas estoy aprendiendo y explicas muy bien, otra cosa es que no he visto muchos ejemplos del lado del front. y otros ejemplos he visto que todas las interfaces van en el dominio porque es el que define las reglas. tal vez como tu dices no he visto un estandar en el scafold de carpetas.
    un saludo desde colombia y aqui tienes un sub mas!

  • @fernandobayona
    @fernandobayona Год назад +1

    Me gusto mucho esta explicación

  • @DuluxTV
    @DuluxTV Год назад +1

    Interesante video, ojala pueda hacer videos sobre implementacion serveless, saludos.

  • @LtdJorge
    @LtdJorge Год назад +1

    Hostia Albert, pensaba que te había pasado algo. Bienvenido de nuevo :)

  • @gelver.chinchilla
    @gelver.chinchilla Год назад +1

    Welcome back!!!

  • @alexxyolol4903
    @alexxyolol4903 Год назад +1

    i really apreciate your help with dowloanding this software

  • @rodrighost
    @rodrighost Год назад +1

    Excelente video 😉

  • @luiscid5239
    @luiscid5239 3 месяца назад

    La verdad que me ha gustado mucho el video, es largo pero necesario, con el ejercicico práctico se aclaran muchas dudas, ya que consultas por ahí y cada uno lo hace como quiere, respetando un poco los conceptos base, ... más o menos.
    Me asalta 2 dudas:
    i) Al usar el objeto de dominio en el adaptador de BBDD. Dado que pensaba que los objetos de dominio solo se usaban dentro de la capa application.
    ii) El uso de un repositorio genérico, que entiendo que puede ser muy corto cuando precises de búsquedas específicas, no se si sería mejor tirar por Spring Data Jpa. Además, que entiendo que si vas haciendo aplicaciones pequeñas, quizás no haya tantos repositorios.

  • @fabiansepulveda4634
    @fabiansepulveda4634 Год назад +1

    Hey man, It works great and without any problems.

  • @sendo_19
    @sendo_19 Год назад +4

    El retorno del rey

  • @rickhunter8216
    @rickhunter8216 Год назад

    QUE RICA DEPILADA DE CEJAS SE HIZO PROFE. 🙂

  • @claudioaltamirano389
    @claudioaltamirano389 Год назад +1

    muchas gracias!!

  • @FERNANDOMATADECOCO
    @FERNANDOMATADECOCO Год назад +1

    Buena explicaciónsobre ingeniería de software

  • @christiansanchez2217
    @christiansanchez2217 Год назад +1

    GRANDE CRACK!!!

  • @Piczzi
    @Piczzi Год назад +2

    El "EntityRepository" es como lo que viene siendo un "DAO" ??

  • @benjaminsepulveda1664
    @benjaminsepulveda1664 Год назад

    Que genial que vuelvas a generar contenido, hexagonal es un gran tema eso si en mi opinión los puertos no fueron implementados de la manera que significan de verdad los puertos de entrada son interfaces que interactúan con el dominio y los puertos de salida son los que interactúan con componentes externos al dominio lo mismo para las capa de application ejemplo: un repositorio sería un puerto de entrada y una interface que envíe un correo o ejecute una acción externa al dominio o sea no lo modifique sería un puerto de entrada. Pero como dijo en el video no existe una receta rígida para implementar hexagonal

    • @pacoscotty9693
      @pacoscotty9693 Год назад

      Me sacas de dudas, es como creía que se implementaba, pero al ver que el lo hace de esta manera me ha surgido la duda. Gracias!

  • @kevinospina9617
    @kevinospina9617 Год назад +1

    Hola Albert, muchas gracias por la explicación, de pronto recomiendas alguna bibliografía para complementar?

  • @jrbarcenilla8019
    @jrbarcenilla8019 Год назад +1

    Bien!!

  • @harlxxx
    @harlxxx Год назад +2

    Hace un tiempo encontre tu canal, y todo el contenido es excelente se te agradece mucho. Solo tengo una duda con respecto a como se estructura esta arquitectura, tengo entendido que las dependencias van de adentro hacia afuera DOMINIO(No depende de nada externo) APLICACION(Puede depender de dominio pero no de INFRA) INFRA(Pueden depender de dominio y aplicacion ) no se si mi pensamiento es muy purista. por ahi fue algo que se te paso en el ejemplo donde aplicacion depende de infra(porque los puertos y adaptadores los colocaste en infra). Saludos

  • @jeffersonsantillan6925
    @jeffersonsantillan6925 Год назад +1

    Hola, si que te haces esperar, pero me diste tiempo a ver hartos videos tuyos de dockers, kubernetes y cloud

  • @robertomendez7405
    @robertomendez7405 Год назад +4

    Muy buen video. A partir de ahora tienes un nuevo seguidor :)
    Pero quería comentar algo que no se si está bien... veo que en el caso de uso `CustomerUseCase` que se encuentra en la capa de Aplicación se está haciendo uso de un componente que se encuentra en infraestructura... que es el `EntityRepository` violando el principio de que solo las capas exteriores tienen conocimiento de las capas internas... se me está pasando algo?
    Yo por mi parte lo que haría seria simplemente mover esa interfaz de EntityRepository a Aplicación, aunque lo que solemos hacer es tener todas las interfaces de las entidades en el Dominio.... que tampoco se si es el lugar correcto. ¿Qué opinas de todo esto que te comento?

    • @ciltocruz
      @ciltocruz 10 месяцев назад +1

      Es que la interfaz debe estar en la carpeta de aplicación y su implementación en la infraestructura.

  • @ssupercrack
    @ssupercrack Год назад +1

    Grande

  • @rjurado5867
    @rjurado5867 Год назад

    Muy completo el vídeo. Me choca que la interface del repositorio se encuentre en la carpeta de infra. En las arquitecturas límpias suelo ver la definición del repositorio en la capa de dominio y su implementación en la de infraestructura.

  • @maikolcucunuba2252
    @maikolcucunuba2252 5 месяцев назад

    mil gracias por la explicacion, en este caso si quisiera cambiar de base de datos el cambio se tendria que hacer creando la por ejemplo la clase MysqlRepository en el paquete outputadapter?

  • @FranciscoMartinez-uk6ni
    @FranciscoMartinez-uk6ni Год назад +2

    Me ha parecido genial la explicación, a mi siempre me preocupa cómo estructurar los proyectos. La inyección de dependencia lo hace directo spring sin tener que configurar nada? Y el testing como se haría?
    Muchas gracias!

  • @ismaelescobarcorona7256
    @ismaelescobarcorona7256 Год назад +1

    No me gustó la implementación, pero eres muy bueno como arquitecto en la reutilización de código, aprendí algunas cosas interesantes

  • @lubeckable
    @lubeckable Год назад +1

    bravisimo

  • @gabrielavalle626
    @gabrielavalle626 Год назад

    Buenos días. gracias por la explicación con el ejemplo queda mas claro. Una de las ideas de las arquitecturas limpias es que el dominio no dependa de ninguna librería, al usar lombok en el domain ¿ no estamos acoplando el domain a una librería ?
    Gracias, saludos!

  • @JamsMendez
    @JamsMendez Год назад +1

    💙

  • @jesuscangalaya5450
    @jesuscangalaya5450 Год назад

    Hola albert , alguna documentación que me recomiendas leer para aprender más sobre arquitectura exagonal? 😊

  • @oldcrackful
    @oldcrackful Год назад

    Hola tendrás videos de implementaciones en microservicios?, existe alguna forma de monitorear la estabilidad de los servicios activos y sus posibles fallas?

  • @gerard2309
    @gerard2309 5 месяцев назад

    Hola Albert, muchas gracias por tan excelente video, tengo una pregunta, es buena practica mantener los servicios o la capa de aplicación libre de DTOS y mantener toda esta manipulación de DTOS y mappers en la capa de infraestructura o controllers? Muchas gracias.

  • @manuvalbu
    @manuvalbu Год назад +1

    Lo del hexágono no es que esté mal ni sea falso. Es simplemente un símil con 6 adaptadores. Igual que ponen un hexágono, podrían poner un heptágono, un pentágono o un cuadrado.
    Sino estás de acuerdo con lo del hexágono entonces no la denomines hexagonal, denomínala arquitectura de puertos y adaptadores, que es su otro nombre.

  • @cesar.sevilla
    @cesar.sevilla 6 дней назад

    buenas tardes, en qué paquete podría ir una clase Constante ?

  • @ricanmalra
    @ricanmalra Год назад

    Que son los value object (vo)? Excelente video.. muchas gracias por compartir el repositorio..

  • @tarmagoyf95
    @tarmagoyf95 Год назад

    si por ejemplo tenemos un API rest el controlador sería un input adapter que utiliza la interfaz de nuestro caso de uso ¿no?

  • @oshoosho4604
    @oshoosho4604 11 месяцев назад +1

    14:00 ES EN SERIO!!!!
    USE spring initializr!!!!!

  • @yonathangutierrez1733
    @yonathangutierrez1733 Год назад +1

    Observabilidad: extender usos de Prometheus y Jaeger en diferentes proyectos (agente y cliente caso Jaeger)

  • @raulbolivar9549
    @raulbolivar9549 3 месяца назад

    Estimado Albert si mi entidad Customer quiere cambiar de esquema de Public a otro esquema en donde lo defino? Gracias de antemano por tus respuestas!