Встречается на 3% собеседований по Python
Зачем нужен dependency injection
Dependency Injection (DI) — это паттерн проектирования, который позволяет передавать зависимости объекта извне, а не создавать их внутри. Это делает код более гибким, тестируемым и поддерживаемым.
Преимущества 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): # Зависимость передается извне
self.db = db
def get_data(self):
return self.db.query()DI особенно полезен в крупных проектах и при написании unit-тестов. В Python его можно реализовать вручную или с помощью библиотек (например, injector или dependency-injector).

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