Пытаюсь разобраться с архитектурой MVP и все чаще слышу Use Case. Что оно значит? Википедия как-то не обьясняет.
Ответ
UseCase - это бизнес-логика, которую вы можете описать простым предложением.
Например, "Добавить платежку", "Удалить платежку", "Отредактировать платежку".
Канонического определения Interactor нет. Кто-то приравнивает UseCase и Interactor.
Я сторонник подхода, что Interactor = UseCase feature facade.
То есть для нашего примера есть PaymentsInteractor, который включает вышеописанные UseCases.
Такой подход удобден тем, что получается более стройная и упорядоченная структура бизнес-логики. Если UseCase - это отдельный класс, то ваше приложение может быть заполонено этим бойлерплэйт кодом. Кроме того, когда у вас ситуации, что один UseCase зависит от другого и т.д., вам все равно как-то придется их объединять.
Комментариев нет:
Отправить комментарий