Что определяет бизнес-объект - PullRequest
6 голосов
/ 02 марта 2010

Из названия я считаю, что это прямой вопрос, но, глядя в «мир бизнес-объектов», я никак не могу понять, каким должен быть бизнес-объект. Есть ли какие-то передовые практики, которым я должен следовать, или даже какие-то шаблоны проектирования?

Я нашел книгу "Эксперт C # Business Objects", это будет моей лучшей отправной точкой для лучшего понимания?

Ответы [ 5 ]

5 голосов
/ 02 марта 2010

Бизнес-объект относится к бизнес-поведению или данным, связанным с сущностью, которую он представляет.

В приложении у вас есть код, который делает то, что должно делать приложение (бизнес), и код, который технически позволяет ему работать и взаимодействовать с пользователем. Например, в шаблоне MVC бизнес-компонентом будет работа модели.

Я думаю это объясняет это лучше. Вы также можете взглянуть на шаблон MVC и увидеть ответственность каждого уровня. Как только вы поймете это, вам будет легче увидеть, что называется «бизнес-объектом».

4 голосов
/ 02 марта 2010

Бизнес-объекты являются элементами вашей модели домена .

Что такое модель домена? Модель предметной области описывает, что ваша система делает с точки зрения реального мира . Модель предметной области описывает логические отношения между элементами и ограничения между ними.

Бизнес-объект , бизнес-объекты , или просто объекты являются взаимозаменяемыми условиями. Здесь говорится о том, что программное решение будет представлять в реальном мире, это может быть client, account, documents и т. Д. Это может быть то, к чему ваше решение должно обратиться

Это исключает чисто технические объекты, которые существуют только для решения проблем реализации.

Мы используем термин сущности , потому что эти элементы существуют (они существуют) вне программного обеспечения. Другими словами, программное обеспечение является представлением этих элементов.

См:

1 голос
/ 16 мая 2010

Я до сих пор не понимаю, насколько бизнес-объекты (BO) отличаются от объектов передачи данных (DTO).

Мне кажется, что DTO содержат только данные, а BO содержат данные и код для обработки данных?!?

То есть один BO может «содержать» данные нескольких DTO, верно?

1 голос
/ 02 марта 2010

Возможно, конкретный пример мог бы помочь. Допустим, вы пишете приложение для планирования меню. Здесь вашими бизнес-объектами могут быть такие вещи, как Menu, Ingredient, UserAccount, Invoice - те объекты, которые содержат логику вашей бизнес-модели.

Вещи, которые не являются бизнес-объектами, включают такие вещи, как MenuForm, База данных, Транзакция.

0 голосов
/ 02 марта 2010

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

...