Какие хорошие библиотеки Python подходят для следующих нужд?
-
18-09-2019 - |
Вопрос
Какие хорошие библиотеки Python подходят для следующих нужд:
- MVC
- Абстракция домена
- Абстракция базы данных
- Видеотека (только для создания миниатюр)
Я уже знаю, что SQLAlchemy действительно хорош для абстракции базы данных, поэтому не беспокойтесь об этом, если не хотите предложить лучший вариант.
Редактировать: Это может показаться глупым упоминать, но я говорю о MVC для графического интерфейса, а не для Интернета, упоминаю просто для пояснения.
Редактировать: Также содержит ли часть MVC часть графического интерфейса или я могу использовать отдельную библиотеку для графического интерфейса, например PyQt?
Решение
Вы пробовали wxWidgets (ну, wxPython фактически)?
Он имеет хорошую документацию (что всегда хорошо) и позволяет создавать код в стиле MVC.Это всего лишь библиотека графического интерфейса, но она позволяет выполнять некоторые простые манипуляции с изображениями (если вам этого недостаточно, попробуйте использовать версию ImageMagick для Python).Он использует встроенные элементы управления, поэтому приложение выглядит как родное в той операционной системе, в которой оно запущено.
PyQt с другой стороны, документация у него даже лучше, чем у wxWidgets или wxPython, но я так и не смог привыкнуть к внешнему виду его графического интерфейса (он индивидуальный, поэтому не выглядит родным ни в одной ОС).Поскольку компания RiverbankComputing не смогла договориться с Nokia о лицензии, Nokia запустила проект под названием Писайд который является версией Qt-привязок LGPL.Его должны завершить в начале 2010 года.
Другие советы
Джанго это довольно хороший фреймворк MVC с orm
Вы могли бы пойти с http://turbogears.org/ .Это похоже на Django, но использует существующие модули «из полочек».
TurboGears 2 создан на основе опыта нескольких веб-фреймворков следующего поколения, включая TurboGears 1 (конечно), Django и Rails.Все эти платформы имели ограничения, которые по-разному разочаровывали, и TG2 является ответом на это разочарование.Нам хотелось чего-то, что имело бы:
- Реальная поддержка нескольких баз данных
- Горизонтальное секционирование данных (шардинг)
- Поддержка различных наборов инструментов JavaScript и новая система виджетов, упрощающая создание тяжелых приложений Ajax.
- Поддержка нескольких форматов обмена данными.
- Встроенная расширяемость с помощью стандартных компонентов WSGI.