Принцип инверсии зависимостей (Dependency Inversion Principle, DIP) говорит, что:
Высокоуровневые модули (логика) не должны зависеть от низкоуровневых (деталей реализации). Оба должны зависеть от абстракций.
Абстракции не должны зависеть от деталей. Детали должны зависеть от абстракций....
продолжить чтение