Sobes.tech
Junior — Middle

Можете ли да објасните концепт убризгавања зависности и како се он примењује у развоју софтвера?

sobes.tech АИ

Одговор од АИ

Уметање зависности (Dependency Injection, DI) је образац дизајна у којем објекти добијају своје зависности споља, а не сами их креирају. Ово повећава модуларност, тестираност и флексибилност кода.

Пример: уместо да класа сама креира објекат базе података, он се добија преко конструктора или сеттера.

class Database:
    def query(self):
        return "податци"

class Service:
    def __init__(self, db: Database):
        self.db = db

    def get_data(self):
        return self.db.query()

# Уметање зависности
database = Database()
service = Service(database)
print(service.get_data())

Овај приступ олакшава замену зависности (нпр. са мock-овима током тестирања) и побољшава одржавање кода.