Sobes.tech
Junior — Middle

Կարող եք նշել Dagger-ի կառուցվածքի հիմնական տարրերը, որոնք օգտագործվում են կախվածությունների կառավարում համար?

sobes.tech AI

Պատասխան AI-ից

Dagger կառուցվածքի հիմնական տարրերը կախվածությունների կառավարման համար:

  • @Module — դաս, որը ապահովում է կախվածությունները @Provides նշանած մեթոդների միջոցով:
  • @Provides — նշում է մեթոդները մոդուլում, որոնք ստեղծում և վերադարձնում են կախվածության օբյեկտներ:
  • @Component — ինտերֆեյս, որը կապում է մոդուլները և կախվածությունների մուտքի վայրերը, պատասխանատու է ներմուծման կոդի սերնդի համար:
  • @Inject — նշում է կոնստրուկտորներում, դաշտերում կամ մեթոդներում, որտեղ և ինչ կախվածություններ պետք է ներմուծվեն:

Օրինակ՝

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

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