Junior — Middle
À quel principe de SOLID se réfère l'utilisation de Dagger pour l'injection de dépendances?
sobes.tech IA
Réponse de l'IA
L'utilisation de Dagger pour l'injection de dépendances se rapporte au principe Principe d'Inversion des Dépendances (D) de SOLID.
Ce principe stipule que :
- Les modules de niveau supérieur ne doivent pas dépendre directement des modules de niveau inférieur.
- Les deux doivent dépendre d'abstractions.
- Les abstractions ne doivent pas dépendre des détails, les détails doivent dépendre des abstractions.
Dagger aide à mettre en œuvre ce principe en fournissant un mécanisme pour l'injection automatique de dépendances via des abstractions (interfaces ou classes abstraites), ce qui réduit le couplage des composants et augmente la testabilité et la flexibilité du code.
Exemple d'utilisation de Dagger :
@Component
interface AppComponent {
void inject(MyActivity activity);
}
class MyActivity {
@Inject
MyRepository repository;
void onCreate() {
DaggerAppComponent.create().inject(this);
repository.loadData();
}
}
Ici, MyActivity ne crée pas directement MyRepository, mais l'obtient via l'injection de dépendances, ce qui est conforme au principe d'Inversion des Dépendances.