Sobes.tech
Junior — Middle

Millistes olukordades on soovitatav kasutada @Inject annotatsiooni konstruktorite jaoks Daggeri kasutamisel?

sobes.tech AI

Vastus AI-lt

Soovitatav on rakendada @Inject märget Daggeri konstruktoritele, kui soovite, et Dagger looks automaatselt selle klassi eksemplarid ja haldab selle sõltuvusi.

Situatsioonid @Inject kasutamiseks konstruktoril:

  • Klass on sõltuvus, mida tuleb injekteerida teistesse komponentidesse.
  • Konstruktor ei nõua täiendavaid parameetreid, mida ei saaks Daggeri kaudu saada.
  • Soovite, et Dagger looks automaatselt objekte ilma, et peaks käsitsi kirjutama fabrikeid või mooduleid.

Näide:

public class UserRepository {
    private final ApiService apiService;

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

Siin teab Dagger, kuidas luua UserRepository, automaatselt pakkudes ApiService-i.