Sobes.tech
Junior — Middle

Тавзеҳ диҳед, ки компонентҳо дар китобхонаи Dagger чистанд ва чӣ гуна барои ворид кардани вобастагиҳо истифода мешаванд

sobes.tech AI

Ҷавоб аз AI

Дар Dagger, компонент — интерфейсест, ки таъминкунандагони вобастагиро (модулҳоро) ва истеъмолкунандагонро (синфҳое, ки вобастагиҳоро дар онҳо ворид мекунанд) пайваст мекунад. Компонентҳо муайян мекунанд, ки кадом вобастагиҳо барои ворид кардан дастрасанд ва ҳаёти онҳоро идора мекунанд.

Истифодаи компонентҳо имкон медиҳад:

  • Муайян кардан, ки кадом объектҳоро тавассути injection вобастагӣ гирифтан мумкин аст.
  • Пайваст кардани модулҳо, ки иҷроишҳои мушаххасро пешниҳод мекунанд.
  • Ҳудуди намоёнӣ ва дастрасиро барои вобастагиҳо идора кардан (масалан, singleton).

Масалан:

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

Ин ҷо, AppComponent модулро NetworkModule пайваст мекунад ва имкон медиҳад, ки вобастагиҳо ба MainActivity ворид шаванд.