Envíanos tu consulta
Términos y condiciones *
*Si no puedes asistir en directo te facilitaremos un enlace para verlo en diferido
logoImagina
Formación
Modalidades
Próximas Convocatorias
Temario
FAQ
Solicitar información
iconoCurso

Curso de Arquitectura Hexagonal

DISPONIBLE EN MODALIDAD:
aMedidaIcon
Aula Virtual Personalizada
arrowRightDark

Este curso avanzado sobre Arquitectura Hexagonal te guiará en el diseño e implementación de aplicaciones modernas, enfocadas en desacoplar las capas internas y externas para mejorar la escalabilidad y mantenibilidad. Aprende los conceptos fundamentales, patrones de diseño y herramientas para aplicar esta arquitectura en proyectos reales, optimizando la gestión de dependencias y promoviendo el desarrollo ágil.

iconClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClient

Formación en Arquitectura Hexagonal bonificable para empresas

A quién va dirigido nuestro curso de Arquitectura Hexagonal

Desarrolladores de software, arquitectos de sistemas y equipos técnicos con experiencia en diseño de software que buscan mejorar sus habilidades en arquitecturas modernas.

Objetivos de nuestro curso de Arquitectura Hexagonal

  • Comprender los fundamentos de la Arquitectura Hexagonal y sus beneficios.
  • Diseñar aplicaciones desacopladas utilizando patrones de diseño efectivos.
  • Implementar puertos y adaptadores para integrar diferentes tecnologías.
  • Optimizar la escalabilidad y mantenibilidad del software.
  • Aplicar principios de prueba y desarrollo ágil en proyectos con Arquitectura Hexagonal.

Qué vas a aprender en nuestro curso de Arquitectura Hexagonal

Este curso avanzado sobre Arquitectura Hexagonal te guiará en el diseño e implementación de aplicaciones modernas, enfocadas en desacoplar las capas internas y externas para mejorar la escalabilidad y mantenibilidad. Aprende los conceptos fundamentales, patrones de diseño y herramientas para aplicar esta arquitectura en proyectos reales, optimizando la gestión de dependencias y promoviendo el desarrollo ágil.

Requisitos de nuestro curso de Arquitectura Hexagonal

  • Conocimiento avanzado de programación orientada a objetos y patrones de diseño.
  • Experiencia previa en el desarrollo de software con frameworks como Spring o Node.js.
  • Un equipo con mínimo 8 GB de RAM, procesador multinúcleo y acceso a Internet.
  • Herramientas necesarias: IDE como IntelliJ IDEA o Visual Studio Code, y frameworks de pruebas como JUnit o Mocha.

Temario del curso de Arquitectura Hexagonal

tema 1

Introducción a la Arquitectura Hexagonal

  • Orígenes y filosofía de la Arquitectura Hexagonal
  • Problemas de las arquitecturas tradicionales
  • Ventajas del desacoplamiento entre dominios y tecnologías
  • Definición de puertos y adaptadores
  • Casos de uso donde la Arquitectura Hexagonal es aplicable
  • Comparación con otras arquitecturas modernas (Clean Architecture, Microservicios)
  • Ejemplos prácticos y contextos reales de uso
  • Rol de la independencia tecnológica en el diseño
  • Cómo esta arquitectura mejora la mantenibilidad
  • Ejercicio: Análisis de un sistema tradicional versus uno hexagonal
iconArrowDown
tema 2

Fundamentos del Dominio y la Capa Central

  • Concepto de dominio y su importancia
  • Modelado de dominio en aplicaciones reales
  • Principio de Inversión de Dependencias
  • Estructura de la capa central: entidades y casos de uso
  • Diferencias entre lógica de negocio y lógica de aplicación
  • Cómo evitar dependencias cíclicas en el diseño
  • Introducción a Domain-Driven Design (DDD)
  • Gestión de datos en la capa central
  • Ejercicio práctico: Crear un modelo de dominio sencillo
iconArrowDown
tema 3

Diseño de Puertos y Adaptadores

  • Definición y rol de los puertos en la arquitectura
  • Tipos de adaptadores: entrada y salida
  • Principios para diseñar adaptadores desacoplados
  • Manejando dependencias externas mediante adaptadores
  • Uso de interfaces para implementar puertos
  • Ejemplos de adaptadores para bases de datos y APIs
  • Estrategias para migrar sistemas legados a la Arquitectura Hexagonal
  • Validación de entrada y salida en adaptadores
  • Ejercicio: Diseño e implementación de un adaptador para una base de datos
iconArrowDown
tema 4

Comunicación Interna y Externa

  • Flujo de datos en la Arquitectura Hexagonal
  • Implementación de servicios REST en un adaptador de entrada
  • Integración con sistemas externos a través de adaptadores de salida
  • Uso de eventos para comunicación interna
  • Comparativa: comunicación síncrona versus asíncrona
  • Configuración de sistemas de mensajería como Kafka o RabbitMQ
  • Ejemplo práctico: Integración de un sistema de pagos
  • Testing de la comunicación interna y externa
  • Ejercicio: Diseñar un flujo de datos con adaptadores
iconArrowDown
tema 5

Principios SOLID en la Arquitectura Hexagonal

  • Aplicación de los principios SOLID en el diseño de software
  • Separación de responsabilidades en módulos y adaptadores
  • Uso de interfaces para promover la flexibilidad
  • Evitando el acoplamiento entre módulos
  • Cómo SOLID mejora la extensibilidad en aplicaciones hexagonales
  • Ejemplo práctico: Refactorizar un módulo utilizando SOLID
  • Ejercicio: Analizar y rediseñar un componente con principios SOLID
iconArrowDown
tema 6

Pruebas en la Arquitectura Hexagonal

  • Introducción a las pruebas en aplicaciones hexagonales
  • Diferencias entre pruebas unitarias, de integración y funcionales
  • Herramientas y frameworks para pruebas automatizadas
  • Estrategias para probar la capa central
  • Mocking de puertos en pruebas unitarias
  • Cómo garantizar la cobertura de pruebas en adaptadores
  • Validación de integraciones con sistemas externos
  • Ejercicio: Escribir pruebas unitarias y de integración para un caso de uso
iconArrowDown
tema 7

Integración con Microservicios

  • Uso de la Arquitectura Hexagonal en sistemas distribuidos
  • Integración de microservicios con puertos y adaptadores
  • Gestión de transacciones distribuidas
  • Despliegue y mantenimiento de aplicaciones hexagonales
  • Herramientas para la monitorización de microservicios
  • Ejemplo práctico: Diseñar un microservicio hexagonal
  • Ejercicio: Implementar un microservicio con adaptadores REST y bases de datos
iconArrowDown
tema 8

Optimización y Escalabilidad

  • Principios para diseñar sistemas escalables
  • Uso de patrones de diseño como CQRS y Event Sourcing
  • Mejora del rendimiento en adaptadores de salida
  • Estrategias para manejar grandes volúmenes de datos
  • Escalabilidad horizontal y vertical en la Arquitectura Hexagonal
  • Ejemplo práctico: Implementación de una solución escalable
  • Ejercicio: Escalar un adaptador de salida para un sistema de mensajería
iconArrowDown
tema 9

Migración de Sistemas Existentes

  • Estrategias para migrar arquitecturas monolíticas a hexagonales
  • Identificación de módulos que requieren refactorización
  • Cómo integrar sistemas legados con adaptadores
  • Ejemplo práctico: Migrar una aplicación CRUD a una hexagonal
  • Ejercicio: Planificar y ejecutar una migración parcial
iconArrowDown
tema 10

Proyecto Final: Construcción de un Sistema Completo

  • Definición de los requerimientos del sistema
  • Diseño del dominio y los casos de uso
  • Implementación de puertos y adaptadores para una aplicación web
  • Integración de servicios externos y bases de datos
  • Pruebas, despliegue y presentación final del proyecto
iconArrowDown