Documente Academic
Documente Profesional
Documente Cultură
Foote y Yoder usan el término BBoM para describir una aplicación que
parece no tener una arquitectura distinguible (piense en un tazón grande de
espaguetis versus plato de lasaña en capas).
Una de las principales razones por las que el software se vuelve complejo y
difícil de administrar se debe a la mezcla de complejidades de dominio con
complejidades técnicas, como se ilustra en la Figura 1.
Complejidad de la Complejidad de
lógica de dominio base de código
heredada
Complejida
d del
Software
Solución técnica de
Líneas Complejidad
borrosas
El dominio de grandes
problemas se divide en Los datos de un contexto
subdominios para facilitar se separan para forzar la
su comprensión. Se crea integración a través de los
un modelo en un contexto contextos de objeto.
para cada subdominio
Figura 3: Aplicando los patrones estratégicos del diseño impulsado por dominios.
1.3.4. Comunicación
La capacidad de describir con eficacia un modelo creado para
representar un dominio problemático es la base de DDD. Por eso,
sin lugar a dudas, la faceta más importante de DDD es la creación
de UL. Sin un lenguaje compartido, la colaboración entre la
empresa y los equipos de desarrollo para resolver problemas no
sería efectiva. El análisis y los modelos mentales producidos en
sesiones de análisis de conocimientos entre los equipos necesitan
un lenguaje compartido para vincularlos a una implementación
técnica.
3.1.2 Capture the domain vision for a shared understanding of what is core
3.1.9 The core domain doesn’t always have to be a perfect the first time
4. Model-driven design
4.1. What is domain model?
4.1.1 The domain versus the domain model
4.1.4 The code model is the primary expression of the domain model
4.1.11 Teach your domain experts to focus on the problem and not jump to a
solution
Figura 6: El código que representa el modelo de dominio constituye solo una pequeña parte de la base de código
general.
Módulo de tabla
Es una variación del patrón del módulo de tabla que asigna objetos a
filas de una tabla en lugar de tener objetos que representan las tablas
en sí. Un objeto representa una fila de la base de datos (registro) en un
estado transitorio o bajo modificación.
El patrón de registro activo es un patrón popular que es especialmente
efectivo cuando su modelo de base de datos subyacente coincide con
su modelo de negocio. El patrón de registro activo es ideal para
aplicaciones simples que tienen una asignación de uno a uno entre el
modelo de datos y el modelo de negocios, como un blog o un motor
de foro; también es un buen patrón para usar si tiene un modelo de
base de datos existente.
A veces, una sola entidad física en el dominio del problema puede ser
clasificada erróneamente como un concepto único en el código. Esto
es problemático cuando la entidad física en realidad representa
múltiples conceptos, que cada uno significa cosas diferentes en
contextos diferentes. Por ejemplo, los productos tienen diferentes
significados en diferentes contextos. Es un concepto que debe
adquirirse con un margen de tabla de resultados y un tiempo de
entrega aceptable para el equipo de Adquisiciones. Sin embargo, para
el equipo de ventas, un producto es un concepto con imágenes, guías
de tamaño y pertenece a una categoría de ventas, ninguna de las cuales
es relevante para el equipo de Adquisiciones, aunque sea la misma
entidad física en el dominio del problema.
7. Capitulo 7:
7.1 A reality Map
7.2.5 Partnership
7.2.6.1 Customers-supplier
7.2.6.2 Conformist
8.2.4 application services represent use cases, not create, read, update, and
delete
9.2 Missing the real valued of DDD: collaboration, communication, and context
9.3 Spending too much time on what’s not important making simple problems
complex
9.3.3 using the domain model pattern for every bounded context