Sobes.tech
Junior — Middle

Explica qué son los componentes en la biblioteca Dagger y cómo se utilizan para la inyección de dependencias

sobes.tech AI

Respuesta de la IA

En Dagger, un componente es una interfaz que conecta los proveedores de dependencias (módulos) y los consumidores (clases en las que se inyectan las dependencias). Los componentes definen qué dependencias están disponibles para la inyección y gestionan su ciclo de vida.

El uso de componentes permite:

  • Determinar qué objetos se pueden obtener mediante inyección de dependencias.
  • Conectar módulos que proporcionan implementaciones específicas.
  • Gestionar el ámbito de visibilidad de las dependencias (por ejemplo, singleton).

Ejemplo:

@Component(modules = NetworkModule.class)
public interface AppComponent {
    void inject(MainActivity activity);
}

Aquí, AppComponent conecta el módulo NetworkModule y permite inyectar dependencias en MainActivity.