Я пишу программу для своей девушки, и я изо всех сил пытаюсь выбрать между способами постоянного хранения. Поскольку приложение в значительной степени вращается вокруг хранения данных, это довольно важный вопрос.
Мои конкретные потребности:
- Небольшой размер для постоянно расширяющегося набора данных, который легко может превышать 10 000 записей.
- Легко получить доступ из кода, легко портировать на другие языки (на случай, если в будущем я напишу интерфейс на другом языке).
- (Необязательно) Простой доступ напрямую, так что можно выполнять ручное редактирование.
- Предпочтение отдается файловому хранилищу, поскольку оно значительно увеличивает переносимость данных.
Я рассмотрел XML, который в основном терпит неудачу по второму и третьему пунктам, но также немного по первому пункту (я не уверен, насколько на самом деле масштабируемым является XML, я не проводил никаких тестов).
Я также рассматривал SQLite, но он требует сторонней библиотеки для правильной работы с Java (насколько я знаю), а также терпит неудачу по третьему пункту, поскольку прямой доступ невозможен.
Что касается изготовления на заказ, я бы предпочел избежать его, поскольку изобретение велосипеда обычно считается Плохой вещью®, но если это действительно лучший вариант, я его рассмотрю.
Примечание. Я знаю, что это возможный дубликат Лучший метод хранения данных для небольшого личного приложения (база данных SQL, XML или файл другого типа), но этот предпочтительный ответ - SQLite, и есть разница между C++ и Java, когда речь идет о SQLite, так что я полагаю этот вопрос достаточно отличается. Поправьте меня если я ошибаюсь.