Объекты домена отделены от бизнес-логики программного обеспечения.Это важная идея процедурного программирования .
Однако некоторые разработчики считают, что этот шаблон является антипаттерном, что означает, что он может бытьнеэффективная практика.
На самом деле вы можете учитывать недостатки
- ваша модель менее выразительна, методы получения и установки не очень хороши для описания модели
- код сложнее использовать повторновы получаете дублированный код среди ваших транзакционных сценариев
- вы должны использовать оболочки, которые скрывают фактическую структуру данных (так что, возможно, не совсем ООП)
- всегда есть глобальный доступ к сущностям
Я думаю, что наиболее интересным моментом является то, что объекты модели предметной области не могут гарантировать их правильность в любое время.Потому что их мутация происходит в отдельных слоях.
Я также работал над приложением CRUD с Zend Framework.Четкое разделение между логикой и данными действительно велико, но когда вы прогрессируете, вы понимаете, что количество слоев и картографических карт становится все больше и больше.Старайтесь использовать код как можно чаще и избегайте повторного использования.