Перечислите два способа передачи объектов при создании экземпляра библиотеки Даггер.

Использование модуля (Module), помеченного аннотацией @Module. Внутри модуля методы, аннотированные @Provides, предоставляют экземпляры зависимостей.

Короткий ответ

Что ответить на собеседовании

Использование модуля (Module), помеченного аннотацией @Module. Внутри модуля методы, аннотированные @Provides, предоставляют экземпляры зависимостей.

Подробный разбор

Ответ с пояснениями

  1. Использование модуля (Module), помеченного аннотацией @Module. Внутри модуля методы, аннотированные @Provides, предоставляют экземпляры зависимостей.

    @Module
    class MyModule {
    
        @Provides
        fun provideMyObject(): MyObject {
            return MyObject()
        }
    }
    
  2. Использование конструктора, помеченного аннотацией @Inject. Dagger может создать экземпляр такого класса, если все его конструкторные зависимости также предоставлены.

    class MyObject @Inject constructor() {
    
        // ...
    }
    

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку