Junior — Middle
Vai jūs varat izskaidrot atkarības ievades koncepciju un kā tā tiek piemērota programmatūras izstrādē?
sobes.tech AI
Atbilde no AI
Atkarību injekcija (Dependency Injection, DI) ir dizaina paraugs, kurā objekti saņem savas atkarības no ārpuses, nevis tās pašiem izveido. Tas uzlabo koda modulatitāti, testējamību un elastību.
Piemērs: vietā, lai klase pati izveidotu datu bāzes objektu, tā to saņem caur konstruktoru vai setteri.
class Database:
def query(self):
return "dati"
class Service:
def __init__(self, db: Database):
self.db = db
def get_data(self):
return self.db.query()
# Atkarību injekcija
database = Database()
service = Service(database)
print(service.get_data())
Šī pieeja atvieglo atkarību nomaiņu (piemēram, ar mocks testiem) un uzlabo koda uzturēšanu.