Что выбрать в качестве хранилища для приложения с тестами?
Почитал одну статью на хабре о рекомендациях использования sqlite в android. И там сказано, что sqlite требует много ресурсов, и в нем нужно хранить меньше данных, или вместо него использовать файлы (xml, json). Также не стоит попусту использовать внешние ключи, если можно обходиться без них, т.к. потребляют немало ресурсов.
Что же действительно стоит выбрать?
sim3x, если я реализую в виде бд, то получается 4 таблицы, много внешних ключей и много записей. А если в json, то всё понятно, в виде объектов и массивов. 1. Нужно будет считать все данные с файла в память.
2. Наверняка еще придется после каждого изменения перезаписывать файл с json.
Вот эти 2 пункта пока настораживают
terminator-light,
Все верно
Кроме того
жсон не человекочитаем
yaml - лучше
После 10кб любой формат не читаем руками (глазами), те по сути не отличается от любого бинарного (в том числе и sqlite)
те нужно разбивать на файлы и строить иерархию директорий
sim3x, почитал про yaml, он по скорости уступает json. Читабельность человеком не нужна. Я бы использовал sqlite, у меня есть таблицы: Категории, Вопросы и Варианты. Если я собираюсь сделать так, чтобы 1 вопрос относился к нескольким категориям, то возникает необходимость скопировать такое к-во записей, совпадающее с к-вом вариантов. Может, это нормально, не знаю..
Вроде бы json подходит, удобно с его помощью представлять данные. Но как уже сказал, есть 2 проблемы, одна из которых - перезапись. С другой стороны, как бы sqlite тоже перезаписывается, но по-своему
Про иерархию директорий не понял как