Middle+
Ի՞նչ են Dagger-ի SubComponents և Component նշումների հիմնական տարբերությունները։
sobes.tech AI
Պատասխան AI-ից
@Component
interface AppComponent {
// ...
}
@Subcomponent
interface UserComponent {
// ...
}
// AppComponent- ում Subcomponent- ի օգտագործման օրինակ
@Component(modules = AppModules.class)
interface AppComponent {
UserComponent userComponent(); // Ֆաբրիկա մեթոդ ավելացնել
}
Component:
- Անհատական կախվածությունների գրաֆիկ։
- Կարող է լինել հիմնական կոմպոնենտ կամ կախվածություն այլ կոմպոնենտների համար (
dependencies)։ - Ստեղծվում է ֆաբրիկա մեթոդով (
create()կամ builder) նշված ինտերֆեյսում։
Subcomponent:
- ընդլայնում է ծնողի կոմպոնենտի գրաֆիկը։
- ունի հասանելիություն ծնողի կոմպոնենտի տրամադրած բոլոր կախվածություններին։
- իր սեփական կախվածությունները չունի (
dependencies)։ - ստեղծվում է ծնողի կոմպոնենտի միջոցով ֆաբրիկա մեթոդով։
- թույլ է տալիս ստեղծել ավելի մոդուլային և կառավարելի գրաֆիկներ։