Sobes.tech
Junior — Middle

როგორ ხორციელდება დამოკიდებულებების შეყვანა Dagger-ში დამოკიდებული კომპონენტების შიგნით ანოტაციების გამოყენებით?

sobes.tech AI

პასუხი AI-სგან

Dagger-ში დამოკიდებულებების ინექცია ანოტაციებით განხორციელდება დამოკიდებულ კომპონენტების შიგნით, @Component და @Subcomponent ანოტაციების გამოყენებით.

  • მთავარი კომპონენტი (@Component) უზრუნველყოფს დამოკიდებულებებს.
  • დამოკიდებული კომპონენტი (@Subcomponent) გამოაცხადება მთავარ კომპონენტში და შეუძლია მემკვიდრეობა მიიღოს დამოკიდებულებების.

მაგალითი:

@Subcomponent
public interface ChildComponent {
    void inject(SomeClass target);
}

@Component
public interface ParentComponent {
    ChildComponent childComponent();
}

აქ, ChildComponent დამოკიდებულია ParentComponent-ზე და შეუძლია გამოიყენოს მისი დამოკიდებულებები. ანოტაციები საშუალებას აძლევს Dagger-ს გენერირება კოდის ავტომატური ინექციისთვის საჭირო კლასებში.