Принцип DIP из SOLID и Autowiring из DI-контейнеров

Принцип DIP гласит: зависимости должны быть на абстракциях, а не от конкретной реализации.

Например такой код:

public function log(LoggerInterface $logger) { }

Зависимость от интерфейса.

При использовании DI-контейнеров с autowiring - работать не будет. Для работы автовайринга нужно, чтобы был указан конкретный класс в зависимости.

Объясните пожалуйста, что я не так понял? Или почему вижу противоречие в принципе DIP и инструмента для упрощения работы с зависимостями?


Ответы (0 шт):