Здравствуйте, Poudy, Вы писали:
P>Здравствуйте, stasukas, Вы писали:
P>>>Мне кажется, что можно решить такую проблему, если делать следующие вещи:
P>>>- любые расширения сущностей делаются как создание новой сущности, агрегирующей старую. это мы уже обсудили. контроль доступа и прочее делается на уровне каждой из сущностей своими службами. Рассмотрим модуль CRM. Он расширил Customer полями Debt и прочее. Вроде как теперь во всех используемых сущностях должен быть CRMCustomer. Принципиально никто не мешает нам нагенерить заново все классы БО, чтобы они работали с CRMCustomer.
P>>>Иногда нужно из модуля CRM нужно работать с WMSCustomer.
S>>А это не ошибка проектирования? Тогда получается, что подсистемы теряют независимость.
P>нет, это требования функциональности. у пользователя может и не быть модуля WMS. но если бизнес-логика системы такая, что модули могут и должны использовать друг друга? т.е. я имел в виду именно случай, если поставив оба модуля мы получим дополнительную функциональность в каждом. если нам так захотелось. если так захотелось клиентам.
Может логичнее было бы все-таки делать независимые модули, а пересечение функциональности выносить в отдельный модуль.
P>я не вижу существенной разницы. по мне, все отличие указанных способов только в том, как данные ходят от клиента: "обрезками" или вместе.
Да, именно об этом я и говорил.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Now playing: Paul Oakenfold — Zoo York