Junior — Middle
Сиз көз караштарды киргизүүнүн концепциясын түшүндүрө аласызбы жана ал программалык камсыздоону иштеп чыгууда кантип колдонулат?
sobes.tech AI
AIден жооп
Тамырлардын киргизилиши (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())
Бул ыкма dependencies'тердин алмаштырылышын жеңилдетет (мисалы, тесттерде mock'тор менен) жана коддун кармалуучулугун жакшыртат.