Sobes.tech
Intern — Junior

Na čo sa používa injekcia závislostí v softvérových moduloch?

sobes.tech AI

Odpoveď od AI

Vstrekovanie závislostí (Dependency Injection, DI) sa používa na zvýšenie modularity a testovateľnosti softvérových modulov. Namiesto toho, aby závislosti vytvárali vnútri triedy, sú odovzdávané zvonku, čo umožňuje ľahkú výmenu implementácií, zjednodušuje údržbu a rozširovanie kódu.

Napríklad v C# s DI možno odovzdať implementáciu rozhrania do konštruktora triedy:

public interface ILogger {
    void Log(string message);
}

public class ConsoleLogger : ILogger {
    public void Log(string message) {
        Console.WriteLine(message);
    }
}

public class UserService {
    private readonly ILogger _logger;

    public UserService(ILogger logger) {
        _logger = logger;
    }

    public void CreateUser(string name) {
        // logika vytvárania používateľa
        _logger.Log($"Používateľ {name} vytvorený.");
    }
}

Tento prístup uľahčuje výmenu loggera za iný (napríklad, súborový) bez zmeny triedy UserService.