Back to questions
amoCRM
Junior — Middle
65
Можешь назвать ключевые элементы структуры Dagger, используемые для управления зависимостями?
Companies where asked
Answer from AI
sobes.tech 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);
}