Здравствуйте, GlebZ, Вы писали:
GZ>ФАУЛЕР. Фаулер дал другую терминологию: Transaction Sript и Domain Model.
Автор терминов Rich Domain Model и Anemic Domain Model — Фаулер.
Кратко говоря — Фаулер разбирая Domain Model говорит, что Rich — это правильная Domain Model, а Anemic — не правильная. Таким образом, к Transaction Sript это не имеет никакого отношения, если говорить о Фаулеровских терминах.
Так что прежде чем писать про Anemic vs Rich, не плохобы написать, что такое вообще Domain Model, чего я добивался еще в прошлый раз.
GZ>Под Domain Model некоторые понимают Rich Domain Model, что не является правдой,
Это ты Фаулеру скажи..
GZ>МИФ. Существует миф, что для объектов Rich Domain Model обязательно наличие прозрачных reference между собой. Этот преступный миф не является правдой. Он не имеет отношения ни к Rich, ни к здравому смыслу. А имеет отношение к понятиям statefull, stateless и чисто опциональному lazy load. Единственное отличие, в Anemic – состояние разнесено с методами получения ссылочных объектов. В Rich – это единый объект.
Либо ты сам себе противоречишь, либо я не понимаю о чем ты.
GZ>2. Инкапсуляция.
Хочешь сказать, чот в Anemic ее нет или что в Rich она выше?
GZ>Программисту, использующему данный объект, недоступно его состояние, кроме как определенный интерфейс.
Проблема только в том, что в реальной жизни один фиг в бизнес объекте есть прямой доступ к данным, максимум обернутыми в свойства. В противном случае объект должен знать обо всех сценариях своего использования и меняться при появлении каждого нового сценария.
... << RSDN@Home 1.2.0 alpha 4 rev. 1082>>