SlideShare una empresa de Scribd logo
DomainDrivenDesignwww.raona.com
DDD>Índice*) Índex¿Y qué es esto con tantas D’s?Conceptos de DDDUbiquitous LanguagePersistanceIgnoranceEl corazón del softwareUna arquitectura base
DDD>Índice*) Índex¿Y qué es esto con tantas D’s?Conceptos de DDDUbiquitous LanguagePersistanceIgnoranceEl corazón del softwareUna arquitectura base
DDD>¿ Y que es esto con tantas D’s?1. ¿Y que es esto con tantasD’s?Es una propuesta para desarrollar software desarrollada por Eric Evans en el libro Domain-DrivenDesign. TacklingComplexity in theHeart of Software
Nace dentro del movimiento XP.
Programadores hablando con usuarios… (Parece mentira eh…)
Refactorización continua.
Se basa en:
Predominio del dominio sobre el resto de elementos de un sistema.
Es más importante un diseño consistente que las tecnologías empleadas.
Una propuesta contra el antipatrónAnemicDomainModel.
POCO’s que hacían demasiado poco.DDD>Índice*) Índex¿Y qué es esto con tantas D’s?Conceptos de DDDUbiquitous LanguagePersistanceIgnoranceEl corazón del softwareUna arquitectura base
DDD>Conceptos de DDDUbiquitous LanguageTraducido al castellano de forma literal es:
1: Lenguaje Ubícuo (¿¿¿Claro no???)
2: Lenguaje Omnipresente (Tooooooooooooooma)
Básicamente consiste en establecer un lenguaje que compartan todos los miembros de un equipo. Un lenguaje común.
Es la base sobre la que construimos un modelo.
Establecer este lenguaje es un proceso continuo durante  el ciclo de vida del proyecto.
Nos indica las entidades y las acciones que pueden formar parte del modelo.DDD>Conceptos de DDDUbiquitous LanguageComo usuario quiero crear albumes de fotos.
Como usuario quiero añadir fotos en los albumes.
Puedo tener albumesvaciosen ciertos momentos.
Como usuario quiero informar dónde se ha hecho la foto.
Como usuario quiero describir lo que aparece en la foto.
Como usuario quiere decir quien ha hecho la fotoDDD>Índice*) Índex¿Y qué es esto con tantas D’s?Conceptos de DDDUbiquitous LanguagePersistanceIgnoranceEl corazón del softwareUna arquitectura base
DDD>Conceptos de DDDPersistanceIgnoranceDentro de DDD no se graba, se persiste.
Como almacene los datos no debe condicionar el modelo.
Por extensión, como los muestre o los explote tampoco.Sistema de Gestión de Álbumes Fotográficos.SilverlightEFWPFNHibernateASP.netADO.netWinFormsSharepointGestión de autoresGestión de álbumesGestión de fotografias
DDD>Índice*) Índex¿Y qué es esto con tantas D’s?Conceptos de DDDUbiquitous LanguagePersistanceIgnoranceEl corazón del softwareUna arquitectura base
DDD>Conceptos de DDDEl corazón del softwareCon DDD construimos el corazón del software
El modelo es el corazón de nuestro software.
Las UI pueden mejorarse

Más contenido relacionado

Introducción a DDD