Aplicações GUI

October 2nd, 2004 § 6 comments § permalink

Um leitor me propôs o seguinte problema:

Você é um programador Windows iniciante, embora você tenha bastante experiência de programação em geral. Você quer desenvolver aplicações GUI simples para rodar no Windows 2000 ou XP. O que você faria. Parece-me que não há nenhum resposta simples.

Esse é um problema realmente difícil. Desenvolvimento de aplicações GUI é fundamentalmente diferente de desenvolvimento para servidores ou programação embutida, e há um monte de questõeas considerar quando se decide partir por esse caminho. Como o leitor mesmo apontou, não parece haver um resposta simples.

Enquanto eu pensava sobre o assunto, me ocorreu que todos os ambientes desktop em todas os sistemas operacionais que eu usei compartilham desse problema. De fato, o desenvolvimento para alguns ambientes, como o Linux, é ainda mais complicado do que o desenvolvimento para Windows porque estes ambientes possuem uma arquitetura GUI mais complexa, geralmente mais flexíveis e poderosas mas menos padronizadas.

Eu acredito que há dois aspectos para a questão: primeiro, o ambiente de desenvolvimento em si, isto é, o IDE e/ou a linguagem e as ferramentas de suporte nas quais o programa será escrito; e segundo, a biblioteca que será usada para fazer a interface para a GUI nativa da plataforma ou que irá emulá-la.

Geralmente, os dois aspectos precisam ser considerados simultaneamente porque o que você escolhe para resolver um deles quase sempre limita as escolhas que você tem para o outro. Por exemplo, se você resolve desenvolver para Windows usando o Delphi, da Borland, você está limitado à Borland’s VCL. (Na verdade, há também a CLX , mas ela não é tão útil ou madura como a VCL.) Por outro lado, se você escolhe desenvolver em Python, você está livre para escolher entre uma dúzia de bibliotecas difernetes, cada qual com seus méritos e desvantagens.

Independentemente da linguagem e ambientes de desenvolvimento, porém, há alguns critérios básicos que precisam ser considerados quando uma biblioteca para desenvolvimento GUI é escolhida. Alguns deles são:

  • Velocidade do desenvolvimento
  • Performance em tempo de execução
  • Identidade visual
  • Facilidade de instalação
  • Extensibilidade
  • Portabilidade
  • Documentação

» Read the rest of this entry «

Where am I?

You are currently viewing the archives for October, 2004 at Superfície Reflexiva.