Hay varias preguntas al respecto, y leerlas no me ayuda. En Eric Evans DDD, utiliza el ejemplo de la dirección como un tipo de valor en ciertas situaciones. Para una empresa de pedidos por correo, la dirección es un tipo de valor porque realmente no importa si la dirección se comparte, quién más vive en la dirección, simplemente que el paquete llega a la dirección.DDD: Ayúdenme a comprender mejor objetos y entidades de valor
Esto tiene sentido para mí hasta que empiece a pensar cómo se diseñaría esto. Teniendo en cuenta el diagrama de la página 99, que tiene así:
+------------+
|Customer |
+------------+
|customerId |
|name |
|street |
|city |
|state |
+------------+
Esto cambia a:
+------------+
|Customer | (entity)
+------------+
|customerId |
|name |
|address |
+------------+
+------------+
|Address | (value object)
+------------+
|street |
|city |
|state |
+------------+
Si estos fueran tablas, Dirección tendría su propia identificación con el fin de tener una relación con el cliente, convirtiéndolo en una entidad.
Es la idea de que en una base de datos relacional estos permanecerían en la misma tabla, como en el primer ejemplo, y que usaría características del ORM para abstraer la dirección como un objeto de valor (como las características del componente nHibernate)?
Me doy cuenta de que un par de páginas después habla sobre la desnormalización, solo estoy tratando de asegurarme de entender el concepto correctamente.
Gracias por esta explicación, me ayuda a sentir más confianza sobre el uso de DDD en escenarios como este. – jpierson