DDD - это не про структуру папок. Это про борьбу со сложностью.
Самая большая ловушка: прочитав Эванса или Вернона, начать пихать DDD в простой CRUD. Если ваше приложение просто перекладывает JSON из запроса в базу, DDD сделает разработку в 3 раза дороже и медленнее.
🚦 Когда DDD избыточен:
💜Админки, простые CMS.
💜Микросервисы-прокси.
💜Прототипы (MVP), которые нужно выкинуть через месяц.
🔥 Когда DDD необходим:
💜Сложный бизнес-процесс: (например, расчет налога с учетом льгот, региона и фазы луны).
💜Долгоживущий проект: (вы будете поддерживать это 3+ года).
💜Важность языка: Когда менеджер говорит «списать бонус», а в коде это
$user->points -= 10. Это рассинхрон, который приведет к багам. В DDD это будет $user->debitBonuses(10).Главный принцип:
DDD применяется не ко всему проекту целиком, а к Core Domain (Ядру). Вспомогательные модули (отправка почты, логи) могут и должны оставаться простыми.
Вывод: Не стройте "Звезду Смерти" для доставки пиццы. Сложность архитектуры должна соответствовать сложности бизнеса.
Ставь ❤️, если видел "Hello World" на DDD с 15 интерфейсами.
#ddd #architecture #php #strategy
📲 Мы в MAX
👉 @php_lib