Sobes.tech
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'тор менен) жана коддун кармалуучулугун жакшыртат.