Junior — Middle
Vysvětlete, co jsou komponenty v knihovně Dagger a jak se používají pro injekci závislostí
sobes.tech AI
Odpověď od AI
V Daggeru je komponenta rozhraní, které spojuje poskytovatele závislostí (moduly) a spotřebitele (třídy, do nichž jsou závislosti vkládány). Komponenty určují, jaké závislosti jsou dostupné pro injekci, a řídí jejich životní cyklus.
Použití komponent umožňuje:
- Určit, jaké objekty lze získat prostřednictvím dependency injection.
- Propojovat moduly, které poskytují konkrétní implementace.
- Spravovat rozsah viditelnosti závislostí (například singleton).
Příklad:
@Component(modules = NetworkModule.class)
public interface AppComponent {
void inject(MainActivity activity);
}
Zde komponenta AppComponent spojuje modul NetworkModule a umožňuje vkládání závislostí do MainActivity.