Встречается на 5% собеседований по Python
Что такое Внедрение зависимости (Dependency injection)
Внедрение зависимости (DI) — это паттерн проектирования, при котором зависимости объекта передаются извне, а не создаются внутри самого объекта. Это делает код более гибким, тестируемым и поддерживаемым.
Пример без DI:
python
class Database:
def fetch_data(self):
return "Данные из БД"
class Service:
def init(self):
self.db = Database() # Зависимость создается внутри класса
text
def get_data(self):
return self.db.fetch_data()text
**Пример с DI:**
```python
class Database:
def fetch_data(self):
return "Данные из БД"
class Service:
def __init__(self, db: Database): # Зависимость передается извне
self.db = db
def get_data(self):
return self.db.fetch_data()
# Использование
db = Database()
service = Service(db) # Внедряем зависимостьПреимущества DI:
- Упрощает тестирование (можно передавать mock-объекты)
- Уменьшает связанность кода
- Позволяет легко менять реализации зависимостей

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