Выбор ответа Senior Архитектура: MVVM, MVI, Clean обновлено

Когда use case лишний

Вопрос

Когда use case-класс скорее вредит, чем помогает?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Когда он просто вызывает один метод репозитория без собственной логики. Use case оправдан, если в нём есть логика: объединение источников, бизнес-правила, переиспользование.

Варианты ответа

  1. Когда одна и та же логика переиспользуется в трёх разных ViewModel
  2. Когда он объединяет и сортирует данные из двух разных репозиториев
  3. Когда он просто вызывает один метод репозитория без собственной логикиправильный ответ
  4. Когда он содержит правила валидации, которые нужны сразу нескольким экранам

Разбор

Use case оправдан, если в нём есть логика: объединение источников, бизнес-правила, переиспользование. Прокладка operator fun invoke() = repo.get() добавляет файл, тест и уровень вызова без пользы. Гайд Android называет domain-слой необязательным. Хороший ответ на собесе: вводить use case по мере появления логики, а не заранее для каждого метода.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.