En el año 2003, el reconocido experto en software Eric Evans, publicó un libro en el que presentó el concepto de Domain-Driven Design.

Desde entonces, esta técnica se ha convertido en una de las más populares a la hora de diseñar software de alta calidad y escalable.

En este podcast hablamos sobre esta técnica junto a Christian Ciceri, arquitecto de software y co-fundador de Apiumhub.

Apiumhub es una empresa de desarrollo de software en Barcelona, con un enfoque principal en la arquitectura de software. Apium Academy ofrece cursos de programación y desarrollo de software.

¿Qué es DDD y por qué deberíamos usarlo?

Domain Driven Design es un estilo de diseño de software que se propuso en el 2003 por Eric Evans y proviene tradicionalmente del diseño orientado a objetos y de los principios de buen diseño.

Principalmente nace para oponerse al estilo de diseño que era dominante en esos años, en el que la base de datos era el centro de aplicación y donde un software está “orquestando” entidades de base de datos.

Domain Driven Design, en cambio, propone la lógica de dominio como centro de aplicación, en lugar de poner la base de datos. Este estilo de diseño maximiza la modularidad, la escalabilidad y la testabilidad.

¿Por qué en tu curso insistes tanto sobre los conceptos relacionados con las transacciones?

Insisto mucho con el tema de transacciones principalmente por dos razones. Primero, porque entender bien el concepto de transacción nos ayuda a entender bien el concepto de invariante. El concepto de invariante es fundamental para diseñar correctamente los aggregate tools.

Y segundo, DDD es un estilo de diseño que casa muy bien con la idea de tener una arquitectura distribuida. Si tenemos una arquitectura distribuida, tenemos a la vez transacciones distribuidas, y para entender bien la problemática de estas últimas (y cómo se resuelven), es imprescindible tener claro todos los conceptos que hay detrás de las transacciones.

¿Dónde escuchar nuestros podcast?

Puedes escucharlos en las principales plataformas de podcast: Ivoox, Spotify, YouTube, Google Podcast, Apple Podcast y Amazon Music.

Imagen de portada: Motion Array.

Cuéntanos qué te parece.

Los comentarios serán moderados. Serán visibles si aportan un argumento constructivo. Si no estás de acuerdo con algún punto, por favor, muestra tus opiniones de manera educada.

Suscríbete