Встречается на собеседованиях • сегодня
Какую проблему решает Dependency Injection
Dependency Injection (DI) — это паттерн проектирования, который помогает уменьшить связанность (coupling) между компонентами системы. Основная идея — передача зависимостей извне, а не их создание внутри класса.
Проблемы, которые решает DI:
- Тестируемость — легко подменять зависимости на моки/стабы.
- Гибкость — можно менять реализацию без изменения кода класса.
- Поддержка — код становится чище, зависимости явные.
Пример без DI:
python
class Database:
def query(self):
return "data"
class Service:
def __init__(self):
self.db = Database() # Жёсткая зависимость
def get_data(self):
return self.db.query()Пример с DI:
python
class Service:
def __init__(self, db: Database): # Зависимость инжектируется
self.db = db
def get_data(self):
return self.db.query()Теперь Service не знает, как создаётся Database, и его можно тестировать с MockDatabase.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы