Junior — Middle
99
Ați putea explica ce înseamnă conceptul de injecție de dependențe în programare?
Companiile au fost întrebate
СБЕР Бизнес
Black Wall Group
Răspuns de la AI
sobes.tech AI
Внедрение зависимостей (Dependency Injection, DI) — это принцип проектирования, при котором объект получает свои зависимости (другие объекты, которые он использует) извне, а не создает их самостоятельно.
Это позволяет:
- Уменьшить связанность компонентов
- Упростить тестирование (легко подменять зависимости моками)
- Повысить гибкость и переиспользуемость кода
Пример на Python:
class Engine:
def start(self):
print("Двигатель запущен")
class Car:
def __init__(self, engine): # зависимость передается через конструктор
self.engine = engine
def drive(self):
self.engine.start()
print("Машина едет")
engine = Engine()
car = Car(engine) # внедрение зависимости
car.drive()
Здесь класс Car не создает объект Engine самостоятельно, а получает его извне. Это позволяет легко заменить Engine на другой класс с таким же интерфейсом, например, для тестирования.