Введение в архитектуру ПО. Практикум: привычный репозиторий и путь к инверсии зависимостей
В данной статье вы узнаете о том, что инверсию зависимостей между бизнес-правилами и хранилищем данных реализуют на разную глубину, и варианты различаются не правильностью, а объёмом кода и тем, сколько сведений о базе данных остаётся в коде правил. Мы разберём три из них: привычный, где готовый интерфейс хранилища из фреймворка подключается прямо к правилам; вариант с отдельной моделью, где у правил есть и собственный интерфейс к хранилищу, и собственные классы данных, не связанные с таблицами; и переходный - с собственным интерфейсом, но прежними классами. Отдельно и подробно рассмотрен выбор между ними и переход от одного к другому. Вы также познакомитесь со способами удержать границу между правилами и хранилищем и с вопросом, по которому видно, какие методы хранилища переводить на интерфейс правил нужно, а какие нет.
