Sobes.tech
Junior — Middle

Můžete vysvětlit koncept závislostní injekce a jak se používá ve vývoji softwaru?

sobes.tech AI

Odpověď od AI

Vstřikování závislostí (Dependency Injection, DI) je návrhový vzor, při kterém objekty získávají své závislosti zvenčí, místo aby si je sami vytvářeli. To zvyšuje modularitu, testovatelnost a flexibilitu kódu.

Příklad: místo toho, aby třída sama vytvářela objekt databáze, přijímá ho přes konstruktor nebo setter.

class Database:
    def query(self):
        return "data"

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

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

# Vstřikování závislosti
database = Database()
service = Service(database)
print(service.get_data())

Tento přístup usnadňuje výměnu závislostí (například za mocky při testování) a zlepšuje údržbu kódu.