Junior — Middle
Qual é o papel dos componentes Dagger na gestão da injeção de dependências?
sobes.tech IA
Resposta da IA
Os componentes no Dagger (Components) são responsáveis por criar e fornecer dependências. Eles atuam como contêineres que conectam módulos (Modules), que fornecem objetos específicos, com os pontos de injeção (Injection Targets).
Principais funções dos componentes:
- Definem o escopo das dependências (por exemplo, Singleton).
- Fornecem um grafo de dependências, conectando os provedores dos módulos aos consumidores.
- Permitem realizar a injeção de dependências em classes através dos métodos inject().
Exemplo:
@Component(modules = [NetworkModule::class])
interface AppComponent {
fun inject(activity: MainActivity)
}
Aqui, o AppComponent gerencia a criação de objetos a partir do NetworkModule e os injeta na MainActivity.