Arquitectura Hexagonal con Java Spring y Spring Boot
Una formación orientada a la aplicación profesional.
La Arquitectura Hexagonal es un enfoque moderno para el desarrollo de software que busca mejorar la mantenibilidad, escalabilidad y flexibilidad de las aplicaciones mediante la separación clara entre la lógica de negocio y las capas de infraestructura. En este curso, aprenderás a diseñar e implementar aplicaciones con Arquitectura Hexagonal utilizando Java, Spring y Spring Boot, aplicando principios como la inversión de dependencias, la modularidad y la independencia de la infraestructura.
A lo largo del curso, explorarás los conceptos clave de esta arquitectura, desde su estructura de puertos y adaptadores hasta su integración con tecnologías como Spring Data JPA, mensajería asíncrona con Kafka y patrones avanzados como CQRS y Event Sourcing. A través de ejercicios prácticos y ejemplos reales, desarrollarás aplicaciones limpias y desacopladas, listas para evolucionar en entornos de alta demanda.
Contenido del curso.
Módulo 1: Introducción a la Arquitectura Hexagonal
- Principios de la arquitectura hexagonal (puertos y adaptadores).
- Comparación con otras arquitecturas (monolítica, en capas, DDD).
- Beneficios en mantenibilidad y escalabilidad.
Módulo 2: Diseño y Componentes Claves
- Dominio y lógica de negocio: Entidades, Agregados y Servicios de dominio.
- Casos de uso (Application Services): Implementación y separación del dominio.
- Adaptadores de entrada: REST API (Spring Web), eventos, CLI.
- Adaptadores de salida: Persistencia con Spring Data JPA, APIs externas, mensajería.
Módulo 3: Implementación Práctica con Java y Spring Boot
- Configuración de un proyecto en Spring Boot.
- Definición del dominio y los casos de uso.
- Implementación de puertos con interfaces.
- Creación de adaptadores con Spring (controllers, repositories, services).
- Uso de Spring Dependency Injection para gestionar dependencias.
Módulo 4: Persistencia en Arquitectura Hexagonal
- Implementación de un repositorio con Spring Data JPA.
- Separación entre la capa de dominio y la de persistencia.
- Uso de DTOs y mapeadores (MapStruct).
Módulo 5: Casos Avanzados y Buenas Prácticas
- Integración con Mensajería Asíncrona (Kafka).
- Uso de Event Sourcing y CQRS en arquitecturas hexagonales.
- Observabilidad con Spring Boot Actuator y Micrometer.
- Refactorización de una aplicación en capas a hexagonal.
Todo lo que necesitas saber.
- Comprender los fundamentos de la Arquitectura Hexagonal y sus ventajas frente a otros enfoques tradicionales.
- Diseñar aplicaciones con una separación clara entre dominio, casos de uso y adaptadores.
- Implementar soluciones en Java y Spring Boot aplicando el modelo de puertos y adaptadores.
- Gestionar la persistencia de datos de forma desacoplada mediante Spring Data JPA y DTOs.
- Integrar adaptadores de entrada y salida, incluyendo REST API, mensajería y APIs externas.
- Aplicar buenas prácticas de observabilidad, testing e integración continua en proyectos con Arquitectura Hexagonal.
- Refactorizar una aplicación tradicional en capas hacia una estructura hexagonal.
- Este curso está diseñado para:
Desarrolladores Java con experiencia en Spring Boot que buscan profundizar en arquitecturas modernas. - Arquitectos de software interesados en diseñar aplicaciones escalables y mantenibles.
- Ingenieros de software y técnicos líderes que deseen aplicar principios de arquitectura hexagonal en sus proyectos.
- Equipos de desarrollo que trabajan en aplicaciones empresariales y buscan mejorar la modularidad y flexibilidad de sus sistemas.
Experiencias que cuentan.
Deja tu valoración
No necesitas registrarte. Indica tu nombre y email, puntúa el curso y comparte tu experiencia.