Come utilizzi l'iniezione delle dipendenze nel tuo lavoro?
Risposta dell'AI
sobes.tech AI
L'iniezione delle dipendenze (Dependency Injection, DI) è un pattern che consente di passare le dipendenze di un oggetto dall'esterno, anziché crearle internamente. In Java, utilizzo DI per migliorare la modularità, la testabilità e la facilità di manutenzione del codice.
Ad esempio, nel framework Spring, dichiaro le dipendenze come bean, e il contenitore Spring le inietta automaticamente nelle classi necessarie tramite il costruttore o i setter. Questo rende più facile sostituire le implementazioni, ad esempio durante la scrittura di test unitari, dove si possono usare oggetti mock.
Esempio di utilizzo di DI con il costruttore:
@Component
public class UserService {
private final UserRepository userRepository;
// La dipendenza viene iniettata tramite il costruttore
public UserService(UserRepository userRepository) {
this.userRepository = userRepository;
}
public User findUser(String id) {
return userRepository.findById(id);
}
}
Questo approccio favorisce l'inversione del controllo (IoC), dove la creazione e il collegamento degli oggetti sono controllati da un contenitore esterno, e non dalla classe stessa.