Что представляет собой богатую модель предметной области в POJO / POCO? - PullRequest
3 голосов
/ 22 ноября 2008

В чем разница между

  • Простые поля-аксессоры-мутаторы класс
  • Класс с богатым моделированием

Что представляет собой богатое моделирование в классах бизнес-доменов?

Ответы [ 2 ]

8 голосов
/ 22 ноября 2008

«Богатый» в том смысле, в котором он здесь используется, подразумевает «богатое поведение» (в отличие от состояния).

Существует техническое поведение и поведение домена. аксессоры и мутаторы являются техническими; им не хватает «почему», которое определяет деловые интересы.

Доменные объекты представляют «почему» и инкапсулируют «как». На самом деле, все объекты делают это; доменные объекты делают это специально для бизнес-ценности.

Допустим, вы, как объект домена сотрудника, должны запросить выходной день. У вас есть 2 варианта:

  1. Скажите своему менеджеру, и он отметит расписание.
  2. Спросите у своего менеджера расписание и отметьте его.

Модель 1 богата. «Почему» (время отпуска) заключает в себе «как» (отмечая расписание).

Модель 2 переводит менеджера в простой пакет свойств и пропускает абстракцию планирования.

0 голосов
/ 22 ноября 2008

Когда ваша бизнес-логика инкапсулирована в ваши бизнес-объекты. Другими словами, у вас есть слой Business Objects (Domain Model) без необходимости в отдельном слое Business Logic.

...