Sobes.tech
Intern — Junior

K čemu slouží injekce závislostí v softwarových modulech?

sobes.tech AI

Odpověď od AI

Vstřikování závislostí (Dependency Injection, DI) se používá ke zvýšení modularity a testovatelnosti softwarových modulů. Místo toho, aby závislosti vytvářely uvnitř třídy, jsou předávány zvenčí, což umožňuje snadnou výměnu implementací, zjednodušuje údržbu a rozšiřování kódu.

Například v C# s DI lze předat implementaci rozhraní do konstruktoru třídy:

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áření uživatele
        _logger.Log($"Uživatel {name} vytvořen.");
    }
}

Tento přístup usnadňuje výměnu loggeru za jiný (například souborový) bez změny třídy UserService.