Можешь перечислить и объяснить основные области (scope), используемые в Dagger для управления жизненным циклом зависимостей?

В Dagger области (scope) используются для управления временем жизни и уникальностью создаваемых зависимостей. Основные области:

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

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

В Dagger области (scope) используются для управления временем жизни и уникальностью создаваемых зависимостей. Основные области:

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

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

В Dagger области (scope) используются для управления временем жизни и уникальностью создаваемых зависимостей. Основные области:

  • @Singleton — гарантирует, что объект будет создан один раз на весь жизненный цикл компонента (например, приложения). Это самый распространённый scope для синглтон-сервисов.
  • @ActivityScoped (или аналогичные кастомные scope) — объект живёт в пределах жизненного цикла Activity. Это значит, что при пересоздании Activity создаётся новый экземпляр.
  • @FragmentScoped — аналогично для фрагментов.
  • @Reusable — Dagger может переиспользовать объект, но не гарантирует единственный экземпляр.
  • Без scope — каждый запрос на зависимость создаёт новый объект.

Использование scope помогает контролировать, сколько раз создаётся объект, и управлять памятью и производительностью приложения.

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

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

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

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