Quel est le rôle de l'annotation @Provides dans le contexte de l'injection de dépendances et à quoi sert-elle?
sobes.tech IA
Réponse de l'IA
L'annotation @Provides est utilisée dans les bibliothèques d'injection de dépendances (par exemple, Dagger en Android) pour marquer les méthodes qui créent et fournissent des dépendances. Ces méthodes se trouvent généralement dans des modules (@Module) et sont responsables de la création d'objets qui seront injectés dans d'autres parties de l'application.
Par exemple, si vous avez une classe qui dépend d'un service, vous pouvez écrire une méthode avec @Provides qui crée ce service et permet au framework d'injection de dépendances de le passer automatiquement là où il est nécessaire.
Exemple :
@Module
public class NetworkModule {
@Provides
Retrofit provideRetrofit() {
return new Retrofit.Builder()
.baseUrl("https://api.example.com")
.build();
}
}
Ainsi, @Provides sert à indiquer explicitement comment créer des dépendances qui ne peuvent pas être créées automatiquement via des constructeurs.