Sobes.tech
Junior — Middle

Оё метавонед консепсияи ифлоскунии назорат ва нақши он дар таҳияи системаҳои нармафзорро шарҳ диҳед?

sobes.tech AI

Ҷавоб аз AI

Инерсияи идоракунӣ (Inversion of Control, IoC) як принсипи тарҳрезист, ки дар он идоракунии ҷараёни барнома ба контейнер ё рамкаи беруна интиқол дода мешавад, на дар коди мустақими барнома.

Ҷойи он, ки объект худ созиш ва идоракунии вобастагиҳои худро кунад, ин вобастагиҳо аз берун (масалан, тавассути конструктор ё setter) ворид карда мешаванд. Ин модулӣ, осонтар кардани санҷиш ва нигоҳдории коди барномаро таъмин мекунад.

Дар Java, ин одатан тавассути Dependency Injection амалӣ мешавад, ки дар он контейнер (масалан, Spring) объектҳоро месозад ва давраи ҳаёти онҳоро идора мекунад.

Масали ворид кардани вобастаги:

public class Service {
    private Repository repository;

    // Ворид кардани вобастаги тавассути конструктор
    public Service(Repository repository) {
        this.repository = repository;
    }

    public void doWork() {
        repository.save();
    }
}

Ин ҷо, Service Repository-ро мустақиман намесозад, балки аз берун мегирад, ки мувофиқ бо принсипи IoC мебошад.