Este curso está dirigido a todos aquellos programadores que quieran iniciarse en el mundo de la arquitectura de microservicios, más concretamente en la arquitectura hexagonal, una de las más utilizadas en este tipo de desarrollos.
Para la realización de esta formación sacando el máximo partido a la misma, es necesario tener conocimientos intermedios de programación, preferiblemente en lenguaje Java, ya que usaremos el gestor de dependencias Maven durante la formación. Si necesitas conseguir estos conocimientos básicos o recordar algunos aspectos, te recomendamos realizar nuestro Curso de Java 8 desde cero.
Comenzamos la formación con un bloque introductorio en el que comenzarás a tener tu primera toma de contacto con conceptos que después serán fundamentales a lo largo del curso. Se explicará qué es la arquitectura del software, la evolución que ha tenido a lo largo del tiempo y qué es la arquitectura hexagonal.
Sin salir de la introducción, también aprenderás qué es un microservicio y por qué es tan útil para la arquitectura hexagonal. Seguidamente se explicará qué es el TDD (Test Driven Development) y cómo lo aplicaremos dentro de nuestro proyecto, qué son los conversores de dominio y cómo se utilizan en la arquitectura hexagonal, y para concluir, veremos el esquema de la aplicación que desarrollaremos a lo largo del resto del curso.
Pasando al segundo segmento del curso, el tutor se centrará en la propia arquitectura hexagonal. A lo largo de las lecciones que componen el mismo, veremos paso a paso cómo crear nuestro proyecto, comenzando por su estructuración e inicialización en la que utilizaremos Spring Initialzr, además de la instalación de las dependencias de Maven que necesitaremos más adelante.
Continuamos explicando qué son los VO o Value Object y por qué son necesarios en este caso, además de realizar el modelado de nuestro dominio y a crear los diferentes endpoints o controladores para comunicarnos con nuestra aplicación. Para concluir este apartado, aprenderás a crear un test de integración y a probar con el mismo la API utilizando Postman.
Para finalizar el curso veremos qué es CQRS (Command Query Responsibility Segregation) y cómo seguir ese patrón para separar las responsabilidades de nuestra aplicación de arquitectura hexagonal, además de unos conceptos para ir un paso más allá, como son los principios SOLID y cómo cumplirlos, la arquitectura limpia y la arquitectura explícita.