O PyGTK ainda é relevante?


11

Eu sou novo no Linux, mas não no desenvolvimento de aplicativos. Eu venho de um RealBasic em um fundo Mac.

Aceitei que preciso aprender uma nova linguagem para desenvolver para Linux (já que o RB não será executado em distros de 64 bits e é uma linguagem proprietária com cloed), mas quero ter certeza de que escolho a correta.

Eu estive olhando o Python e estava tudo pronto para ler até que eu li que o PyGTK está se tornando obsoleto com a introdução do GTK 3. Isso é verdade? O site do desenvolvedor Ubuntu parece recomendá-lo ao Glade para a interface do usuário, mas quero ter certeza de que não aprendo algo que esteja saindo!


Como você deseja aprender algo novo, pode dar uma olhada no wxPython e Pyside. Eu sugiro o wxPython, pois ele terá vantagens se você mudar para C ++ um dia, migrar para o wxWidgets é muito fácil. Pyside é coisa de Python para QT, mas não tenho nenhuma experiência com isso! Apenas um conselho
Stefano Mtangoo

Respostas:


9

A resposta curta é não.

O PyGTK está sendo desativado e substituído pelo PyGObject, pois o widget configura atualizações de GTK + 2 para GTK + 3. No Oneiric, todos os aplicativos ubuntu 'nativos' são executados usando o conjunto GTK + 3 .

Em uma observação pessoal, recentemente, comecei a desenvolver um aplicativo em Python e, analisando-o, decidi usar o Python3 com PySide (que é Qt4 em vez de GTK + 3) porque descobri que o Python 3 seria o padrão no ano mais ou menos, levou-me a escrever o programa, e porque o Qt4 tem uma documentação muito boa e algum software de desenvolvimento de primeira classe (basta ter uma trilha do Qt 4 Designer ...)


5
Dica: A variedade GTK + do designer do Qt existe e é chamada glade.
precisa

Acho isso muito difícil de entender ter vindo de um REALbasicambiente de desenvolvimento protegido. Tudo o que quero fazer é criar um aplicativo cuja GUI pareça 'nativa' ou compatível com o tema em uma versão moderna do Ubuntu ou Mint. Também quero realmente poder projetar a GUI em um editor (WYSIWYG) e vinculá-la ao código Python. Dada essa informação extra - em que direção você acha que devo seguir? Existe um equivalente QT de Glade?? (também @aquaherd)
Nootrino 4/11/11

1
O equivalente em Qt do Glade é o Qt4 Designer. No Python, você normalmente constrói a interface e a carrega como classe. Para aplicativos simples, você pode desenhar tudo em seu próprio código, mas para GUIs mais complexas, é mais fácil usar um programa como o Qt Designer, que irá gerar o código para você. Então, tudo que você precisa escrever é o código que conecta os eventos da GUI às suas funções.
Thomasmichaelwallace 4/12

1
Em uma nota específica sobre Qt: PySide e PyQt, são bibliotecas muito semelhantes para vincular python a uma interface Qt. A principal diferença entre eles é o licenciamento (por exemplo, o Pyqt não permite que você libere seu código sob a licença LGPL) e o espaço para nome (por exemplo, importe o PySide ou importe o PyQt). Estou argumentando que o PyQt tem muito mais tutoriais e screencasts que provavelmente o ajudarão no seu caminho, mas o PySide é mais preferível, pois possui um PPA, uma licença menos restritiva e é oficialmente suportado.
Thomasmichaelwallace 4/12

2
Não sei dizer se você deve se ramificar na rota GTK + ou QT, pois os dois kits de ferramentas se encaixam na conta, mas desde que você perguntou sobre o pygtk ser relevante, presumi que você já estivesse definido no GTK +. Se esse ainda for o caso, e considerando o plano de fundo do REALbasic, dê uma olhada no gambasque é um IDE básico já GTK +. Principalmente, tendo em mente várias plataformas, vale a pena aprender C / C ++ e separar a interface do usuário da lógica do aplicativo e compilar o front-end com um kit de ferramentas nativo. Por exemplo, a transmissão, um cliente bittorrent que veio da plataforma Mac, usa quartzo no Mac e GTK + no restante.
aquaherd

0

PyGTK e pyGOBJECT não são mais o método recomendado para o desenvolvimento de aplicativos para o Ubuntu. O site do desenvolvedor Ubuntu agora recomenda QML para os aplicativos Ubuntu.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.