2008-10-14 4 views
4

Контекст: Итак, я пытаюсь построить смехотворно сложную модель домена. Говоря с пользователями, существует несколько способов использования системы (например: один из способов с точки зрения сотрудника, другой путь - с точки зрения работодателя). На самом деле это несколько приложений, которые повторно используют основной домен.Объекты Перспективы

Вопрос: Неправильно ли создавать домен с нескольких точек зрения? Например, для создания домена по мере запуска бизнес будет означать создание всех видов классов отношений, которые несут дополнительную информацию об объекте и т. Д. Однако, при запуске с определенной точки зрения, изображение намного яснее, поскольку большая часть классы отношений могут быть перенесены в их родительский объект.

Идеи? Опровержения? Я полностью вне базы?

ответ

4

Нет, это абсолютно необходимо. Эван называет эти «перспективы» ограниченными контекстами в своей книге.

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

+0

У меня есть книга Эрика и, по-видимому, забыл об этой главе. Спасибо за направление. – 2008-10-14 17:39:46

2

Я не думаю, что вы должны попробовать и предопределить «основной домен» спереди. Пусть он появится в процессе разработки. Кроме того, все, что не является общим для 2 (или более) перспектив, не должно быть в «ядре».

Например, постройте часть системы с точки зрения работодателя. Это может побудить вас создать такие объекты, как «Проект», «Задача» и «Клиент». Затем создайте часть с точки зрения работодателя. Это может побудить вас создавать новые объекты и повторно использовать «Проект» и «Задача». Именно тогда я переместил «Проект» и «Задачу» в «основную библиотеку», разделяемую остальной частью системы.

Иногда вы найдете общие объекты, но связаны по-разному. В этом случае связь должна быть введена контекстом вместо того, чтобы быть встроенным с самими сущностями.

Смежные вопросы