ARQUITECTURA JAVA: Curso Práctico Domain-Driven Design (DDD)
Descripción
Objetivos
Audiencia
• Desarrolladores backend intermedios y avanzados
• Líderes técnicos y arquitectos de software
• Equipos de producto técnico con foco en calidad del dominio
Prerrequisitos
• Dominio de Java y Spring Boot
• Conocimientos básicos de patrones de diseño y pruebas automatizadas
• Familiaridad con conceptos de orientación al dominio
Temario
• Contexto histórico y filosófico de DDD
• Complejidad en software de negocio
• Tácticas vs estrategia: una visión global
**Módulo 2: Modelado táctico (6h)**
• Entidades, Value Objects y Agregados
• Reglas de negocio vs reglas de aplicación
• Repositorios de dominio vs adaptadores de persistencia
• Servicios de dominio vs servicios de aplicación
• Práctica: modelado y codificación de agregados con lógica rica
**Módulo 3: Modelado estratégico (4h)**
• Bounded Contexts
• Context Maps y relaciones entre contextos
• Ubiquitous Language en equipos mixtos
• Práctica: identificación y separación de contextos
**Módulo 4: Organización del código y validación de diseño (4h)**
• Separación de módulos por contexto
• Integración con arquitectura Hexagonal
• Validación con ArchUnit: dependencias y estructura
• Práctica: reestructuración modular de aplicación existente
**Módulo 5: Práctica integradora y revisión (4h)**
• Desarrollo de un contexto funcional completo (por parejas)
• Modelado colaborativo guiado por casos de negocio
• Presentación de decisiones de diseño
• Feedback grupal y cierre