Sobes.tech
Junior — Middle

Kas saaks nimetada Dagger-struktuuri põhielemente, mida kasutatakse sõltuvuste haldamiseks?

sobes.tech AI

Vastus AI-lt

Daggeri struktuuri peamised elemendid sõltuvuste haldamiseks:

  • @Module — klass, mis pakub sõltuvusi @Provides märgitud meetodite kaudu.
  • @Provides — annotatsioon meetoditele modulites, mis loovad ja tagastavad sõltuvuseobjekte.
  • @Component — liides, mis ühendab mooduleid ja sõltuvuste injekteerimise kohti, vastutab injekteerimiskoodi genereerimise eest.
  • @Inject — annotatsioon, mida kasutatakse konstruktorites, väljad või meetodid, et näidata, kuhu ja milliseid sõltuvusi tuleb injekteerida.

Näide:

@Module
class NetworkModule {
    @Provides
    OkHttpClient provideOkHttpClient() {
        return new OkHttpClient();
    }
}

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