Sobes.tech
Junior — Middle

Որո՞ք նշումներ են օգտագործվում Dagger-ում դասը Dependency գրաֆիկում ներառելու համար։

sobes.tech AI

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

Dagger- ում հետևյալ նշումները օգտագործվում են դասը կախվածությունների գրաֆում ներառելու համար:

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

Օրինակ:

public class Engine {
    @Inject
    public Engine() {}
}

@Module
class CarModule {
    @Provides
    Engine provideEngine() {
        return new Engine();
    }
}

@Component(modules = CarModule.class)
interface CarComponent {
    Car buildCar();
}