Самый простой способ создать крошечное приложение базы данных в Linux - PullRequest
3 голосов
/ 26 января 2009

Я хочу создать очень маленькое приложение для каталогизации для личного использования (хотя я бы открыл его, если бы думал, что кто-то другой будет его использовать). Я не хочу, чтобы у веб-приложения был лишний сервер приложений для этого - плюс мне нравится идея, что он будет автономным и прикрепит его к USB-накопителю.

Мой Criterea:

  • Интерфейс должен быть простым в программировании. Это может быть стиль curses, если это облегчает кодирование. Мой опыт работы с ncurses подсказывает иначе, но я бы на самом деле очень хотел использовать пользовательский интерфейс commanline.
  • Язык не имеет значения. Мой грубый порядок предпочтений (самый высокий сначала):
    • Python
    • C
    • C ++
    • Java
    • Я рассмотрю все, что подходит для Linux
  • Я думаю, что sqlite для хранения, но другие (встраиваемые) предложения приветствуются.

Кто-нибудь делал подобные вещи в прошлом? Какие-либо предложения? Подводные камни, которых следует избегать?

EDIT:

Хорошо, похоже, python + sqlite - ранний победитель. Это просто оставляет вопрос о том, какая библиотека пользовательского интерфейса. Я знаю, что вы получаете tkinter бесплатно в python - но это просто ужасно (я бы предпочел иметь интерфейс curses). Я сделал немного GTK в C, но это выглядит довольно неестественно в Python. У меня была очень короткая работа с wxwidgets, но документация довольно жестокая IIRC (я думаю, что в какой-то момент они переименовали модуль, и все это немного запутано).

Так что у меня остается pyqt4 или какая-то консольная библиотека. Или, может быть, GTK. Мысли? Или я слишком поспешно списал один из вышеперечисленных?

Ответы [ 4 ]

5 голосов
/ 26 января 2009

Я бы определенно рекомендовал (или, во-вторых, если вы уже об этом думаете) - python с sqlite3. Это просто, портативно и без больших драйверов БД. Я написал аналогичное приложение для своих собственных целей каталогизации, и оно отлично работает.

2 голосов
/ 26 января 2009

Я голосую за pyqt или wx за графический интерфейс. (И второй Python + sqlite голосует, чтобы ответить на оригинальный вопрос.)

1 голос
/ 26 января 2009

я второй (или третий) питон и sqlite .

Что касается предложений:

Если вы чувствуете себя минимально амбициозным, я бы предложил создать очень простой веб-сервис для синхронизации вашего каталога с сервером. Я делал это (стыдно, несколько раз) для подобных целей в прошлом.

С sqlite резервное копирование может быть буквально таким же простым, как выгрузка или выгрузка самого последнего файла базы данных, в зависимости от метки времени файла.

Тогда, если вы потеряете или сломаете свою флешку (разбитую на куски, в моем случае), ваш каталог не будет потерян. Вы получаете больше переносимости, по крайней мере 1 резервная копия и некоторое спокойствие.

0 голосов
/ 26 января 2009

Вы также можете использовать Bash для создания приложения

...