Постоянный бизнес-объект должен состоять из следующего:
- Данные
- New
- Сохранить
- Удалить
- Сериализация
- Десериализация
Часто вы абстрагируете функциональность для извлечения их в репозиторий, который поддерживает:
- GetByID
- GETALL
- GetByXYZCriteria
Вы также можете обернуть этот тип функциональности в классы коллекций (например, BusinessObjectTypeCollection), однако существует много движений в направлении использования шаблона репозитория в дизайне, управляемом доменом, для предоставления этих типов средств доступа (например, InvoicingRepository.GetAllCustomers, InvoicingRepository.GetAllInvoices) .
Вы можете поместить бизнес-правила в «Создать», «Сохранить», «Обновить», «Удалить» ... но иногда у вас может быть внешний механизм бизнес-правил, которому вы передаете объекты.