Если вы используете стандартные шаблоны компоновки в качестве xml, строки в strings.xml, действия для обработчиков и поместите базовую логику / алгоритмы / извлечение хранилища данных в отдельный класс (класс модели), вы будете хорошо чувствовать себя на своемспособ написания лучшего кода.
Чтобы проверить свою архитектуру,
1) Спросите себя, можете ли вы выполнить модульное тестирование базовой логики / алгоритма / хранилища данных (класс модели) отдельно от пользовательского интерфейса.Можете ли вы без труда повторно использовать класс модели в другом проекте с другим пользовательским интерфейсом?
2) Затем спросите себя, можете ли вы перенести свое приложение на другой язык, просто указав необязательный файл strings.xml.
Таким образом, презентация (View) в основном находится в main.xml.Код обработки событий и системы (Controller) находится в основном в MyActivity.java. Алгоритм / хранилище данных находится в основном в Model.java.
Действительно большое разделение между основным алгоритмом / хранилищем данных и пользовательским интерфейсом.Основной алгоритм / хранилище данных должны игнорировать детали пользовательского интерфейса.В UNIX это шаблон INTERFACE (VC) -ENGINE (M).Отделение View от контроллера просто продвигает архитектуру на шаг вперед.
Надеюсь, это поможет, JAL