Выявление совокупных корней - PullRequest
1 голос
/ 09 марта 2011

http://i51.tinypic.com/2ueqidt.jpg

Допустим, следующие соотношения (диаграмма). У FundCompany есть фонды и счета. Существует также FundAccount, который создает отношение многие ко многим (а также другие атрибуты на уровне отношений) между счетами и фондами. Наконец, Учетная запись имеет одного или нескольких Бенефициаров.

FundCompany - это совокупный корень, поскольку он находится на вершине пирамиды. Ни Счет, ни Фонд не могут существовать без Фонда. FundAccount не может существовать без Фонда и Счета; это делает их обоих совокупными корнями? Или Фонд по-прежнему является единственным совокупным корнем, которому приходится проходить через него для операций с субъектами FundAccount? Тот факт, что у Учетной записи также есть Бенефициары, которые не могут существовать без Учетной записи, означает ли это, что Учетная запись также является корнем?

Все объекты на этой диаграмме потребуют операций CRUD и экранов в моем приложении. Причина, по которой я привел это, состоит в том, что чаще всего каждый экран пользовательского интерфейса будет хранить идентификатор строки / сущности, на которую он ссылается. Так, например, пользователь нажимает «Подробно» в таблице с фондами, мне может понадобиться получить фонд по его идентификатору. Насколько я понимаю, если объект нуждается в прямом доступе, то он сам по себе является совокупным корнем. Однако по умолчанию многие объекты будут объединять корни.

Основываясь на ответах на вышеуказанные вопросы, я должен сопоставить эти операции с надлежащим агрегированным корневым хранилищем.

1 Ответ

0 голосов
/ 09 марта 2011

Вся ваша диаграмма представляет собой один агрегат = она имеет единый корень агрегата - верхний уровень FundFamily.Если Fund и Account не могут жить без FundFamily, они не могут быть совокупными корнями.

...