Я работаю над созданием приложения для Android, и у меня есть несколько вопросов, на которые я хотел бы высказать ваше мнение.
В данный момент архитектура, о которой я думаю, выглядит следующим образом:
- Android-приложение для интерфейса пользователя,
- Библиотека (Android или «чисто» Java?) Для бизнес-логики,
- Android-библиотека для доступа к базам данных SQLLite (будет использоватьсяBusiness Logic),
- Библиотека Android для доступа к модулям Wifi / BT (будет использоваться Business Logic).
Поскольку она оченьВполне вероятно, что в ближайшем будущем для этого приложения для Android будет разработана Java-версия для Win / Mac / Linux, и я стараюсь максимально отделить Business Logic от API, специфичных для Android.
В сущности, бизнес-логике нужно будет использовать встроенную базу данных SQLite, а также использовать адаптер BT и выходить в Интернет через Wi-Fi, например, это можно сделать с помощью двух выделенных библиотек Android.Проблема в том, что я хотел бы, чтобы Business Logic была только «чистой» библиотекой Java, а не построенной на проекте Android.Возможно ли это в соответствии с этой архитектурой, зная, что это возможно, приложение Android будет иметь «модуль» конфигурации, отвечающий за настройку, настройку и запуск при необходимости двух библиотек на базе Android.
Соответствует ли выбранная в настоящее время архитектураимеет смысл в ваших глазах?
Что бы вы посоветовали для этого приложения:
- Будьте максимально модульными с хорошим уровнем абстракции (на адаптере DB и BT / Wifi),
- Сохраняйте бизнес-логику максимально понятной из API-интерфейсов Android,
- Требуйте минимальных изменений для адаптации всего этого решения к классическому Java-приложению.
Спасибозаранее за ваше время и мнения.