Закон Деметры - объекты данных

Я пытаюсь следовать Закону Деметры (см.http://en.wikipedia.org/wiki/Law_of_Demeter , http://misko.hevery.com/code-reviewers-guide/flaw-digging-into-collaborators/ ), как я вижу преимущества, однако я немного застрял, когда дело доходит до доменных объектов.

Доменные объекты, естественно, имеют цепочку, и иногда необходимо отображать информацию о всей цепочке.

Например, корзина для покупок:

Каждый заказ содержит пользователя, информацию о доставке и список товаров Каждая позиция заказа содержит продукт и количество Каждый продукт имеет название и цену. Каждый пользователь содержит имя и адрес

Код, который отображает информацию о заказе, должен использовать всю информацию о заказе, пользователях и продуктах.

Конечно, лучше и более многократно использовать эту информацию через объект заказа, например & Quot; order.user.address.city & Quot; чем для некоторого кода выше выполнять запросы для всех объектов, перечисленных выше, а затем передавать их в код отдельно?

Любые комментарии / предложения / советы приветствуются!

Ответы на вопрос(5)

Ваш ответ на вопрос