Sobes.tech
Junior — Middle

Kādi komponenti ir iekļauti Dagger atkarību injekcijas ietvarā?

sobes.tech AI

Atbilde no AI

Galvenās Dagger sastāvdaļas ir:

  • @Module — klase, kas nodrošina atkarības, izmantojot metodes ar @Provides anotāciju.
  • @Component — saskarne, kas savieno moduļus un injekcijas vietas. Atbild par koda ģenerēšanu injekcijai.
  • @Inject — anotācija, kas lietota, lai iezīmētu konstruktorus, laukus vai metodes, kurās jāinjicē atkarības.
  • @Scope — anotācija, kas nosaka atkarību dzīves ciklu (piemēram, Singleton).

Piemērs:

@Module
class NetworkModule {
    @Provides
    Retrofit provideRetrofit() {
        return new Retrofit.Builder()...build();
    }
}

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

class MainActivity {
    @Inject Retrofit retrofit;

    void onCreate() {
        DaggerAppComponent.create().inject(this);
    }
}