Шаблон проектирования MVC для разработки приложений для Android с использованием фрагментов в виде представлений и действий в качестве контроллера

Недавно я читал Fragments (не использовал это в своем приложении) и узнал, что он может использоваться в разработке приложений для телефонов.

Я думаю об использовании фрагментов для реализации шаблона проектирования MVC (model-view-controller). Многие утверждают, что разработка Android по умолчанию соответствует MVC. Но я вижу активность так же, как и Views, и определенная нехватка контроллера, когда запускается другая деятельность. Поэтому я думаю использовать "Фрагменты" как "Представления" с помощью одного "Активность" как "Контроллер" > и обменивать/добавлять/удалять фрагменты по мере необходимости.

Итак, мой базовый подход таков:

1) Пользователь взаимодействует с пользовательским интерфейсом (фрагменты).

2) Контроллер (Activity) обрабатывает событие из фрагментов и передает его в модель (Backendthread/Service).

3) Модель (Backendthread/Service) уведомляет контроллер об изменении состояния модели.

4) Контроллер (Activity) уведомляет UserInterface (Фрагменты), который уведомит пользователя.

Мой подход - обряд или ненужные накладные расходы, или мое восприятие о фрагментах неверно?

Пожалуйста, уточните меня.

Ответы

Ответ 1

IMHO, фрагменты - это контроллер. Представление представляет собой корзину фрагментов виджетов. Действия - это уровень оркестровки, определяющий, какие фрагменты (и их виджеты) необходимы в данном случае (например, один на телефоне, два на планшете), но в противном случае имеет ограниченную бизнес-логику.

Говоря об этом, Android и шаблоны, подобные MVC, не обязательно идут вместе. Я не думаю, что Google намерен создать чистую инфраструктуру MVC.