Middle
159
Jak ve své práci používáte dependency injection?
Odpověď od AI
sobes.tech AI
Vstřikování závislostí (Dependency Injection, DI) je vzor, který umožňuje předat závislosti objektu zvenčí, místo toho, aby je vytvářel uvnitř. V jazyce Java používám DI ke zvýšení modularity, testovatelnosti a údržby kódu.
Například v Spring Framework deklaruji závislosti jako beany a kontejner Spring je automaticky vkládá do potřebných tříd přes konstruktor nebo settery. To usnadňuje výměnu implementací, například při psaní jednotkových testů, kde lze použít mock objekty.
Příklad použití DI s konstruktor:
@Component
public class UserService {
private final UserRepository userRepository;
// Závislost je injektována přes konstruktor
public UserService(UserRepository userRepository) {
this.userRepository = userRepository;
}
public User findUser(String id) {
return userRepository.findById(id);
}
}
Tento přístup podporuje inverzi řízení (IoC), kdy je tvorba a spojování objektů řízeno externím kontejnerem, nikoliv vlastní třídou.