Bibliotecas para interfaces gráficas (GUI)

Abril 2017

Existem muitas bibliotecas de programação de uma interface gráfica para um software. E a portabilidade, a rapidez de execução, a velocidade e o custo de desenvolvimento, a estabilidade e a licença de seu software dependerão da sua escolha de biblioteca de gráfica.

Est a dica só dará alguns exemplos importantes de cada tipo de biblioteca mencionado.


I As API nativas


Alguns sistemas implementam sua interface gráfica no próprio sistema operacional, é o caso do Windows cuja parte gráfica se encontra dentro do núcleo do sistema operacional.

I.1 A Api gráfica do Windows


Como mencionado anteriormente, a interface gráfica do Windows não é implementada no nível do usuário, mas no nível do kernel, que tem a vantagem de obter interfaces de rápida execução.
No entanto, o uso direto da API (Application Programming Interface ou Interface de Programação de Aplicativos) do Windows também tem muitas desvantagens:
  • Esta API tem pouca abstração, o gerenciamento da IHC (Interação humano-computador) é feito através do uso de funções de baixo nível. Desenvolver uma IHC com esta API vai demorar mais e pode esconder alguns bugs. No entanto, uma biblioteca, cuja abordagem é de baixo nível poderá, eventualmente, permitir mais possibilidades em gráficos.
  • Esta API não é portátil. O seu software não pode ser usado fora do Windows, a menos que você use a emulação.

Você pode usar esta API em C ou C++ usando os MFC e, claro, em vários idiomas.
Note que a programação de interfaces gráficas como uso da API do Windows é, muitas vezes, mais confortáveis com IDE como o Microsoft Visual C++.

I.2 XWindow


Propor XWindow como API nativa é mentir um pouco. Na verdade, o XWindows já é uma biblioteca de terceiros, mas como ela se situa na base do sistema IHC, em alguns Sistemas Operacionais como o Linux/Unix, vamos classificá-la assim nesta dica.

Você pode usar XWindows para desenvolver interfaces gráficas, mas ainda neste caso você corre o risco de ter uma biblioteca com pouca abstração e que, portanto, exigirá mais tempo de desenvolvimento. Por outro lado, você obterá um software totalmente portátil: XWindow também existe no Windows.
Outro ponto importante, algumas implementações do XWindowsão são livres (XFree, XOrg).

II As bibliotecas de terceiros


As bibliotecas gráficas de terceiros são bibliotecas externas que você pode instalar em seu sistema. Geralmente, elas atuam como a camada de uma biblioteca de nível inferior (API do Windows, XWindows, etc ...) e, assim, oferecem uma interface de desenvolvimento mais confortável.

II.1 Qt


Qt é uma biblioteca gráfica portátil, disponível para o Unix/Linux e o Windows. Ele é conhecido por ter uma arquitetura confortável.

Antes do uso, eu recomendo que você se informe sobre a licença do Qt:

Qt é destinado ao uso em C++, mas você também pode usá-lo com muitas outras linguagens (C/Python, etc ...)

Como exemplo de Qt, basta ver o desktop KDE no Linux ou no software Amarok.

=> Site oficial

II.2 GTK


Como a Qt, GTK é uma biblioteca livre e portátil. Também é apreciada. O software Gimp, por exemplo, foi feito com a Gtk.
Outro exemplo é o desktop Gnome usado no Linux.
Gtk foi escrita em C mas pode ser utilizada em várias outras linguagens.

=> Site oficial

Exemplo de gimp:

II.3 WxWidgets


Sua particularidade é a de produzir janelas com a mesma aparência como se ela tivesse sido programada usando a API nativa do sistema.


=> Site oficial

III Casos específicos: Sistemas embarcados


Os sistemas embarcados são um caso especial, já que se apresentam, em geral, em tela pequena (por exemplo, telefones celulares, GPS etc ...)

Também existem bibliotecas para produzir GUI (Graphical User Interface), nestes pequenos sistemas.

III.1 The Nano-X Window System


Autrefois connu sous le nom de Microwindows, c'est une petite librairie libre, à visiter.
Anteriormente conhecido como Microwindows é uma pequena biblioteca livre, a ser visitada.
=> Site oficial


Tradução feita por Lucia Maurity y Nouira

Veja também

Artigo original publicado por . Tradução feita por pintuda. Última modificação: 16 de janeiro de 2012 às 15:50 por pintuda.
Este documento, intitulado 'Bibliotecas para interfaces gráficas (GUI)', está disponível sob a licença Creative Commons. Você pode copiar e/ou modificar o conteúdo desta página com base nas condições estipuladas pela licença. Não se esqueça de creditar o CCM (br.ccm.net) ao utilizar este artigo.