Поскольку вы спросили, верно ли это, я бы сказал, мягко: «Нет». По крайней мере, не типично.
Но если ты хочешь, чтобы настаивать на использовании встроенного адреса от пользователя:
Вы можете ссылаться на встроенный пользовательский адрес в объекте заказа, просто не так, как вы могли бы подумать! Если вы сохранили идентификатор пользователя в заказе (он должен быть уже там, если Order принадлежит пользователю), вы просто используете user.address
вместо копирования экземпляра адреса, как вы это сделали.
АЛЬТЕРНАТИВА
Я надеюсь проиллюстрировать лучший подход к моделированию домен ...
Более общий подход заключается в создании экземпляра нового объекта заказа, используя адрес пользователя по умолчанию «судно на «адрес для заказа», но при необходимости разрешить пользователю переопределять адрес доставки. Теоретически каждый заказ может иметь разные «корабль к» адресу.
Просто потому, что у двух классов есть адрес, это не значит, что они обязательно совпадают.
КОММЕНТАРИЙ
Заказы более исторический документ, по сравнению с той, которая меняется. Следовательно, Заказы обычно неизменяемый после размещения, ваша модель позволяет изменять адрес каждый раз, когда пользователь меняет свой адрес. Это изменение пульсирует в Приказы, и было бы неверно, поскольку бизнес-логика нормального порядка.
Предположите, что ваш адрес в прошлом году был в Испании, и у вас был приказ № 1 показать Испанию, когда вы запустили отчет о Заказе в прошлом году. Представьте себе, если ваш адрес в этом году в настоящее время является Португалией, а в Приказе № 1 теперь отображается Португалия в том же отчете. Это было бы неверно.
BTW: @Matt дал вам подсказку, что с точки зрения «проблемной области» вы, скорее всего, не захотите моделировать ее, как есть. Я просто разрабатываю ...
Спасибо за ваш комментарий! –