Мне нужно создать дизайн архитектуры для моего приложения.
Сведения о приложении: В моем приложении я показываю некоторые данные, полученные с сервера. Таким образом, в основном, когда вы запускаете приложение, вы получаете список категорий, а когда вы нажимаете на категорию, приложение вызывает веб-сервис, используя REST, и получает ответ JSON. После получения ответа данные JSON анализируются для создания массива объектов, и, наконец, адаптер отображает эти данные в виде списка.
Структура пакета, о котором я подумал:
com.app.activities:
содержит все действия, требуемые в приложении.
com.app.customviews:
пользовательские представления, необходимые для приложения.
com.app.adapters:
различные адаптеры списка / сетки для создания различных типов представлений списка и сетки.
com.app.parsers:
содержит все классы анализатора для анализа ответа JSON, полученного с сервера. Эти классы в основном будут возвращать массив действий к действиям, которые в дальнейшем будут использоваться классом адаптера для создания представлений списка и сетки.
com.app.utils:
содержит функции, которые используются через приложение, например, функция для получения ответа от сервера на запрос, получения строки из входного потока, загрузки изображения с определенного URL, ведения журнала и т. Д.
com.app.model:
содержит все классы моделей для различных пользовательских типов данных.
Рабочий процесс приложения: если выбрана определенная категория, activity
получает ответ от utils
и отправляет его на parsers
, чтобы получить массив данных типа Model
. Теперь этот массив передается в adapters
, который возвращает объект адаптера, который в конечном итоге используется при отображении списка / сетки в activity
.
Теперь, согласно архитектуре приложения, ваш код должен быть разделен на следующие три уровня:
- Уровень представления
- Бизнес-уровень
- Уровень данных
Теперь мне нужно знать, согласно моему приложению, какая часть принадлежит какому слою.
Пожалуйста, помогите, я совершенно не разбираюсь в этом.
спасибо !!
Обновление: Пока гуглял, наткнулся на эту ссылку:
http://apparchguide.codeplex.com/wikipage?title=Chapter%2019%20-%20Mobile%20Applications
Там написано, что ваше приложение должно иметь несколько рабочих процессов, бизнес-компонентов, сущностей и т. Д.
Итак, я думаю, что моя текущая структура пакета неверна, так как я делаю большинство вещей только в Activity.
Итак, теперь мой вопрос: если я следую этой архитектуре, какой должна быть структура пакета или как мне настроить базу кода.