Sobes.tech
Junior — Middle

Kādās situācijās ieteicams izmantot @Inject anotāciju konstruktoriem, izmantojot Dagger?

sobes.tech AI

Atbilde no AI

Ieteicams izmantot @Inject anotāciju Dagger konstruktoros, ja vēlaties, lai Dagger automātiski izveido un nodrošina šīs klases eksemplārus, pārvaldot tās atkarības.

Situācijas, kad izmantot @Inject konstruktorā:

  • Klase ir atkarība, kuru nepieciešams injicēt citos komponentos.
  • Konstruktoram nav nepieciešami papildu parametri, kurus nevar iegūt caur Dagger.
  • Jūs vēlaties, lai Dagger automātiski izveido objektus, ne rakstot manuālas fabrikas vai moduļus.

Piemērs:

public class UserRepository {
    private final ApiService apiService;

    @Inject
    public UserRepository(ApiService apiService) {
        this.apiService = apiService;
    }
}

Šeit Dagger zinās, kā izveidot UserRepository, automātiski nodrošinot ApiService.