Junior — Middle
Dans quelles situations est-il recommandé d'utiliser l'annotation @Inject pour les constructeurs lors de l'utilisation de Dagger?
sobes.tech IA
Réponse de l'IA
Il est recommandé d'appliquer l'annotation @Inject aux constructeurs dans Dagger lorsque vous souhaitez que Dagger crée et fournisse automatiquement des instances de cette classe, en gérant ses dépendances.
Situations pour utiliser @Inject sur le constructeur :
- La classe est une dépendance qui doit être injectée dans d'autres composants.
- Le constructeur ne nécessite pas de paramètres supplémentaires qui ne peuvent pas être obtenus via Dagger.
- Vous souhaitez que Dagger crée automatiquement les objets sans avoir à écrire manuellement des usines ou des modules.
Exemple :
public class UserRepository {
private final ApiService apiService;
@Inject
public UserRepository(ApiService apiService) {
this.apiService = apiService;
}
}
Ici, Dagger saura comment créer UserRepository, en fournissant automatiquement ApiService.