El objetivo de este curso es explicar las diferentes herramientas que nos ofrece Domain Driven Design tanto desde el punto de vista de la organización a través de los patrones estratégicos y el lenguaje ubicuo como desde el punto de vista de la arquitectura a través de los patrones tácticos.
Explicaremos cómo a través de herramientas como Context Mapping y Event Storming podemos crear un lenguaje común en la organización que nos ayude construir soluciones software durables y mantenibles.
Explicaremos cómo trasladar estos conceptos al código y la arquitectura a través de ejemplos concretos haciendo uso de los patrones tácticos de DDD como agregados, repositorios o value objects. Veremos también mecanismos de comunicación entre diferentes Bounded contexts y realizaremos una introducción a event sourcing y CQRS.
El código y los ejemplos del curso están realizados en java. Se podrían adaptar estos ejemplos y ejercicios a cualquier otro lenguaje orientado a objetos si fuera necesario.
El curso se impartirá online, por tanto será necesario que todos los asistentes dispongan de una conexión lo suficientemente buena para mantener videoconferencias de manera fluida. Si el curso se realiza con el material en java será necesario contar con un JDK 11 o superior y algún entorno de desarrollo, nosotros nos sentimos más cómodos con IntelliJ pero todos los ejemplos están construidos de forma que se puedan desarrollar en cualquier IDE.
El curso aborda algunos conceptos avanzados de arquitectura software, para un buen aprovechamiento del mismo recomendamos que los asistentes tengan conocimientos de orientación a objetos y al menos experiencia básico escribiendo pruebas automáticas.
El curso se puede realizar in-house para un equipo de desarrollo o empresa concreta que quiera contratarlo. También realizaremos ediciones en abierto, si quieres consultar el calendario de próximos cursos en abierto o contactar con nosotros para un curso in-house lo puedes hacer a través del formulario al final de esa página.