SA Шпаргалка

Все ответы в 2 клика

Продвинутый

Почему слой Domain (Бизнес-логика) не должен зависеть от БД?

В классической (трехслойной) архитектуре Бизнес-логика напрямую вызывает методы БД (SQL SELECT).

В Чистой архитектуре это запрещено, потому что:
1. Тестируемость: Бизнес-логику невозможно протестировать Unit-тестами без поднятия реальной БД.
2. Гибкость: Если мы захотим сменить PostgreSQL на MongoDB, придется переписывать ядро системы.

✅ Решение (DIP из SOLID): Слой Domain объявляет интерфейс UserRepository. Слой БД реализует этот интерфейс (PostgresUserRepository). Зависимость инвертируется: БД зависит от Домена, а не наоборот.

Ещё вопросы раздела «Архитектура»

Все вопросы раздела «Архитектура»