Выбор ответа Senior Архитектура: MVVM, MVI, Clean обновлено
Когда use case лишний
Вопрос
Когда use case-класс скорее вредит, чем помогает?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Когда он просто вызывает один метод репозитория без собственной логики. Use case оправдан, если в нём есть логика: объединение источников, бизнес-правила, переиспользование.
Варианты ответа
- Когда одна и та же логика переиспользуется в трёх разных ViewModel
- Когда он объединяет и сортирует данные из двух разных репозиториев
- Когда он просто вызывает один метод репозитория без собственной логикиправильный ответ
- Когда он содержит правила валидации, которые нужны сразу нескольким экранам
Разбор
Use case оправдан, если в нём есть логика: объединение источников, бизнес-правила, переиспользование. Прокладка operator fun invoke() = repo.get() добавляет файл, тест и уровень вызова без пользы. Гайд Android называет domain-слой необязательным. Хороший ответ на собесе: вводить use case по мере появления логики, а не заранее для каждого метода.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.