В настоящее время у меня есть приложение, где основная проблема с производительностью заключается в использовании файловой базы данных, состоящей из ответов JSON.
Я хотел бы переписать свое приложение для использования функции базы данных SQLite.
Поскольку я ленив, я хотел бы использовать какой-то ORM.
До сих пор я нашел только две большие библиотеки ORM:
Моя основная цель - повысить производительность при работе с данными как можно больше
Но я обнаружил две возможные проблемы с этими библиотеками.
-
ORMLite использует аннотации, что является большой проблемой производительности в pre-honeycomb из-за эта ошибка
-
GreenDAO использует какой-то генератор кода, и это замедлит процесс разработки, поскольку мне придется писать генератор, а затем использовать сгенерированный код. И мне не очень нравится эта идея.
-
DB4O - это JPA, который я всегда считал медленным и тяжелым для использования в памяти, поэтому не подходит для младших устройств (помните Android API v7)
объявление @ChenKinnrot:
Оценочной нагрузки должно быть достаточно, чтобы думать об использовании ORM.
В моем случае это около 25-30 уникальных таблиц и не менее 10 табличных объединений (по 2 - 4 таблицы за раз). Около 300-500 уникальных полей (столбцов)
Итак, мои вопросы:
- Должен ли я использовать слой ORM/JPA в приложении Android?
- Если да, то какую библиотеку вы бы мне рекомендовали? (и, пожалуйста, добавьте некоторые аргументы)