Pregunta

He conseguido hasta ahora que entiendo objetos de entidad disponer de un identificador, mientras que el valor del objeto no tiene, pero en el ejemplo más común que tenga la entidad persona que tenga un objeto de valor de la dirección que se le atribuye. ¿Cuál es la gran ventaja de crear un objeto de dirección independiente en lugar de simplemente mantener las propiedades de dirección dentro de la entidad persona?

¿Fue útil?

Solución

Además de las cosas ya se mencionó, Greg Young hace un gran problema el hecho de que, puesto que son inmutables, puede validar ellos en la creación y no tendrá que preocuparse acerca de la validación de nuevo. Si el Estado no puede ser cambiado, entonces usted sabe que siempre es válido.

Otros consejos

  • objetos de valor pueden ser utilizados como argumentos para otros métodos en otras clases
  • Puede hacer su diseño más claro
  • Podría ayudar con la optimización del rendimiento (ejemplo: fly-peso patrón)
  • objetos de valor pueden ser reutilizados en diferentes entidades. (Ejemplo:. Entidades de usuario y ubicación con los objetos de valor dirección

No hay que olvidar que "no tener un id" no es la única diferencia entre los objetos de valor y entidades, ser inmutable es también muy importante.

Piense en ello como un componente reutilizable. Se puede hacer en una dirección particular, dirección del trabajo y sin mucho esfuerzo adicional. Se puede utilizar para desacoplar otros sistemas de la entidad persona. Digamos que usted introduce una entidad comercial. También tendrá una dirección.

En relación con este tema es otro tema importante: la composición frente a la herencia

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top