PyGTK все еще актуален?


11

Я новичок в Linux, но не для разработки приложений. Я пришел из RealBasic на фоне Mac.

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

Я смотрел на Python и собирался идти, пока не прочитал, что PyGTK устарел с введением GTK 3. Это правда? Сайт разработчиков Ubuntu по-прежнему рекомендует его с Glade для пользовательского интерфейса, но я хочу убедиться, что я не узнаю что-то, что находится на выходе!


Поскольку вы хотите узнать что-то новое, вы можете взглянуть на wxPython и Pyside. Я предлагаю wxPython, так как он будет иметь преимущество, если вы однажды переключитесь на C ++, и портирование на wxWidgets будет проще простого. Pyside - вещь Python для QT, но у меня нет никакого опыта с этим! Просто совет
Стефано Мтангу

Ответы:


9

Краткий ответ: нет.

PyGTK постепенно сокращается и заменяется PyGObject, поскольку набор виджетов обновляется с GTK + 2 до GTK + 3. Начиная с Oneiric все «нативные» приложения Ubuntu выполняются с использованием набора GTK + 3 .

Что касается меня, то совсем недавно я начал разрабатывать приложение на Python, и, посмотрев его, я решил использовать Python3 с PySide (то есть Qt4 вместо GTK + 3), потому что я обнаружил, что Python 3 станет стандартом в этом году. или так мне потребовалось написать программу, и потому что Qt4 имеет очень хорошую документацию и какое-то первоклассное программное обеспечение для разработки (просто следуйте Qt 4 Designer ...)


5
Совет: Разновидность Qt designer GTK + существует и называется glade.
Aquaherd

Мне очень трудно понять, что я пришел из REALbasicзащищенной среды разработки. Все, что я хочу сделать, - это создать приложение, графический интерфейс которого выглядит «родным» или совместимым с темами в современной версии Ubuntu или Mint. Я также очень хочу иметь возможность проектировать графический интерфейс в редакторе (WYSIWYG) и связать его с кодом Python. Учитывая эту дополнительную информацию - в каком направлении вы думаете, я должен идти? Есть ли QT эквивалент Glade?? (также @aquaherd)
Ноотрино

1
Qt-эквивалент Glade - Qt4 Designer. В Python вы обычно создаете интерфейс, а затем загружаете его как класс. Для простых приложений вы можете нарисовать все это в своем собственном коде, но для более сложных графических интерфейсов проще использовать программу типа Qt Designer, которая сгенерирует код для вас. Тогда все, что вам нужно написать, это код, соединяющий события GUI с вашими функциями.
thomasmichaelwallace

1
На заметку, касающуюся Qt: PySide и PyQt - очень похожие библиотеки для связи python с интерфейсом Qt. Основное различие между ними заключается в лицензировании (т. Е. Pyqt не позволяет выпускать свой код под лицензией LGPL) и пространстве имен (например, импорт PySide или импорт PyQt). Я подчеркиваю это, поскольку у PyQt гораздо больше учебников и скринкастов, которые, вероятно, помогут вам в вашем пути, но PySide более предпочтителен, так как имеет PPA, менее ограничительную лицензию и официально поддерживается.
thomasmichaelwallace

2
Я не могу сказать вам, следует ли вам переходить на маршрут GTK + или QT, поскольку оба инструментария отвечают всем требованиям, но так как вы спросили о релевантности pygtk, я предположил, что вы уже настроены на GTK +. Если это все еще имеет место и рассматривает фон REALbasic, взгляните на gambasGTK + - Basic Basic IDE. Главным образом, имея в виду кросс-платформенность, стоит изучить C / C ++, отделить пользовательский интерфейс от логики приложения и скомпилировать интерфейс с помощью встроенного инструментария. Например, для передачи битторрент-клиента с платформы Mac используется кварц на Mac и GTK + на остальных.
Aquaherd

0

PyGTK и pyGOBJECT больше не рекомендуются для разработки приложений для Ubuntu. Сайт разработчиков Ubuntu теперь рекомендует QML для приложений Ubuntu.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.