La arquitectura o patrón arquitectónico DDD (Domain-driven design, N-Capas Orientada al Dominio), como su nombre lo indica funciona mediante capas: capa del dominio, capa web y capa de persistencia.
Capa del dominio
- DTO y objetos del dominio: estos forman parten del contexto de nuestra aplicación.
- Servicios: estos sirven como puente entre los controladores de la API y la capa de persistencia.
- Especificación de repositorios: son las interfaces que definen las reglas del juego o contratos que debe cumplir la persistencia para intervenir entre los objetos del dominio y la base de datos.
DTO (Patrón Data Transfer Object) es un patrón de diseño cuyo propósito es la creación de objetos planos (POJO, es una instancia de una clase que no extiende ni implementa nada en especial) con atributos que pueden ser obtenidos con una sola invocación, es decir, un DTO puede contener información de múltiples fuentes. Acá puedes consultar un ejemplo.
Capa web
- Controladores API Rest: son los controladores que interactúan con el cliente.
Capa de persistencia
- Repositorios: implementan las especificaciones que se definieron en el dominio.
- Entities: mapea los datos que se encuentran en las tablas de la base de datos.
Interacción entre capas
El flujo de la interacción entre las capas de la arquitectura DDD se muestra en la figura 1.0, y es el siguiente:
- Un cliente llama a un controlador de la API.
- El controlador de la API va al servicio para intervenir en la operación.
- El servicio va al repositorio que necesite.
- Y el repositorio se encarga de gestionar la base de datos.
Comentarios
Publicar un comentario