Showing posts with label friend connect. Show all posts
Showing posts with label friend connect. Show all posts

Friday, July 10, 2009

Iniciando na programação com GWT

Bom pessoal, eu vou começar agora com uma série de artigos explicando como programar utilizando o GWT - Google Web Toolkit.

Bom antes de começar vale a pena ressaltar algumas coisas sobre o GWT.

O GWT é um framework voltado principalmente para a criação da interface do site com o usuário, apesar de ser programado utilizando a linguagem JAVA. Outro ponto que confundem muitas pessoas é o fato dele ser programado em java, mas rodar no cliente. O fato é que o GWT "compila" o codigo escrito em java para javascript, para que ai sim ele possa rodar no navegador do cliente.

Certo, mas porque usar o gwt? Quais beneficios reais ele realmente traz?

Bom respondo essa pergunta utilizando por base os projetos que ja realizei na carreira (codificando diretamente o javascript) e o meu projeto caseiro atual. Com isso levanto alguns pontos:
  • Velocidade e complexidade de codificação: É muito mais simples e rápido criar uma interface utilizando GWT do que programar diretamente utilizando javascript. Interações dinâmicas com o servidor e com o cliente foram criadas de maneira fácil e transparente.
  • Manutenção do código: o código ficou muito mais organizado e fácil de manter, além de não ter nenhum bug.
  • Orientação a objetos: É muito mais simples manter e reusar o codigo, utilizando a orientação a objetos do java.
  • Gerenciamento do CSS: Pode-se deixar a cargo do próprio gwt fazer o carregamento dos arquivos CSS, acelerando ainda mais o carregamento da página.
  • Velocidade de carregamento da página: O GWT cria um codigo obfuscado, que alem de carregar apenas a parte do codigo realmente importante(faz o carregamento do javascript por blocos), aumenta em muito o carregamento da página. Outra vantagem do gwt é a criação de sprites de imagens automáticos, diminuindo o tempo de carregamento das imagens também.
  • Segurança e estabilidade: O código javascript gerado pelo GWT é obfuscado, o que já gera uma dificuldade maior de estranhos entenderem o que esta codificado. Por gerar uma versão otimizada para cada navegador o gwt também melhora a velocidade de processamento da página, e possibilita que até mesmo navegadores com recursos mínimos de javascript (como o opera mini para celulares com java) consigam navegar no site e ate mesmo interagir com ele, sem que o programador precise codificar especificamente para isso.
  • Integração com outros frameworks: o GWT permite ainda q se crie métodos nativos do javscript (que inclusive podem chamar outros métodos java). Com isso fica fácil integrar o gwt com outros frameworks, como jquery. Inclusive o extjs já criou uma biblioteca para o gwt, denominada gxt.
  • Integração com as APIs do próprio Google: o gwt possui uma ótima integração com as outras APIs do google. O próprio plugin do eclipse já cria um projeto com GWT + google app Engine. Diversos gráficos da visualization API também já foram portados para o gwt e também outras APIs, como a friend connect, google accounts, translation, maps e outras.
Bom, essas foram as minhas primeiras impressões sobre o GWT.
Nos próximos posts, eu vou começar a falar sobre o desenvolvimento em si da aplicação the waybetter.

Até lá