Interfaces gráficas e Python
Na postagem retrasada, mostramos um aplicativo em Python que tinha uma interface gráfica, naquele projeto utilizei o framework PyQt. E nesse post falaremos sobre os frameworks mais utilizados para a criação de interfaces utilizando Python.
1. PySimpleGUI
Transforma as estruturas gui tkinter, Qt, WxPython e Remi (baseadas no navegador) em uma interface mais simples. A definição da janela é simplificada usando tipos de dados do núcleo Python entendidos por iniciantes (listas e dicionários). Outra simplificação acontece alterando o manuseio de eventos de um modelo baseado em retorno de chamada para uma mensagem que passa uma. Seu código não é necessário para ter uma arquitetura orientada a objetos que torna o pacote utilizável por um público maior. Embora a arquitetura seja simples de entender, ela não necessariamente limita você a apenas problemas simples. No entanto, alguns programas não são adequados para o PySimpleGUI. O PySimpleGUI implementa um subconjunto dos recursos das estruturas de GUI subjacentes. É difícil definir exatamente quais programas são adequados para o PySimpleGUI e quais não são. Depende dos detalhes do seu programa. Duplicar o Excel em cada detalhe é um exemplo de algo não adequado para o PySimpleGUI.
(descrição retirada da página do framework no pypi)
2. Tkinter
Baseada em Tcl/Tk, a Tkinter acompanha a distribuição oficial do interpretador Python. É a biblioteca padrão da linguagem Python.
Vantagens
- Portabilidade - Programas escritos usando a Tkinter são portáveis livremente entre Linux, Unix, Windows e Mac, além da garantia de que qualquer um poderá executar o programa sem precisar instalar bibliotecas extras no Windows.
- Aprendizado - Tem uma API simples de se aprender e fácil de lembrar. Documentação - Muito bem documentada, com inúmeros tutoriais e referências de ótima qualidade disponíveis na Web.
Desvantagens
- Pobre - Faltam muitos componentes importantes, como notebooks e combo box (apesar de estes poderem ser feitos combinando outros componentes). Alguns elementos (listbox por exemplo) são incompletos ou limitados. Em compensação o componente Text é muito poderoso.
- Aparência - A Tk usa uma função própria para acessar diretamente as funções do sistema operacional e desenhar seus próprios elementos na tela. Isso tem a vantagem de ser mais facilmente portável, mas a grande desvantagem de ter uma aparência diferente da nativa do sistema operacional.
- Performance - O desempenho é extremamente baixo comparado ao que a biblioteca oferece.
(descrição retirada do wikipédia)
3. PyQt5
Qt é um conjunto de bibliotecas multiplataformas C++ que implementam APIs de alto nível para acessar muitos aspectos dos modernos sistemas desktop e mobile. Estes incluem serviços de localização e posicionamento, conectividade multimídia, NFC e Bluetooth, um navegador web baseado em Chromium, bem como o desenvolvimento tradicional de interface do usuário. PyQt5 é um conjunto abrangente de ligações Python para Qt v5. Ele é implementado como mais de 35 módulos de extensão e permite que o Python seja usado como uma linguagem alternativa de desenvolvimento de aplicativos para C++ em todas as plataformas suportadas, incluindo iOS e Android. O PyQt5 também pode ser incorporado em aplicativos baseados em C++ para permitir que os usuários desses aplicativos configurem ou melhorem a funcionalidade desses aplicativos.
(descrição retirada da página do framework no pypi)
Vida longa ao Python!
Comentários
Postar um comentário