↓ Arquivo ↓

Categoria → gwt-ext

Série de Artigos sobre GWT(Google Web Toolkit)

Olá. Vou começar a escrever e postar aqui no blog uma série de artigos sobre GWT. Já estou escrevendo o primeiro e pretendo escrever mais. Mas antes de terminar o primerio e começar a postar aqui este artigos, resolvi dar uma introdução sobre e explicar o que planejo.
Primeiramente digo que de inicio pretendo “começar pelo início”. O que isso quer dizer? Pretendo começar com artigos básicos sobre como utilizar o GWT, configurar o GWT no Eclipse(se for necessário aprofundo falando sobre Netbeans, IntelliJ ou outra IDE), utilizar Remote Services, utilizar os componentes básicos do GWT, utilizar com PHP no lado Servidor e etc. Ou seja, pretendo que tudo funcione como fosse um livro que cada post seja um capítulo por exemplo.
Mas pretendo ir além do “GWT Puro”. Pretendo também falar também sobre SmartGWT e GWT-EXT. Mas das 2 vou dar mais preferência para os SmartGWT. Motivos para isso no post “SmartGWT 1.0b1 lançado“.
O primeiro da série ainda não tenho previsão para postagem. Mas acredito que até Quarta ele esteja pronto. Mas enquanto isso, vai alguns link’s para servir de introdução do assunto.

GWT:
http://code.google.com/intl/pt-BR/webtoolkit/
http://www.gwt.com.br/

GWT-EXT:
http://www.gwt-ext.com/
http://www.extjs.com/

SmartClient:
http://www.smartclient.com/smartgwt
http://www.smartclient.com

SmartGWT/GWT-EXT:
http://www.jroller.com/sjivan/

Ps.: Mesmo com essa série de artigos sobre GWT, pretendo ainda continuar a postar minhas inutilidades. Nem repare.

SmartGWT 1.0b1 lançado

A alguns dias atrás foi lançado(depois de algum tempo que foi anunciado o projeto) o SmartGWT. O SmartGWT é um wrapper dara SmartClient, que traz novos componentes, mais parecidos com desktop, para o GWT(Google Web Toolkit). Esse projeto é de autoria de Sanjiv Jivan, o mesmo que criou o GWT-EXT, que é um wrapper para o ExtJS.

Apesar de não ter utilizado ainda o SmartGWT, o que tenho que dizer é que é um projeto bem promissor e na sua primeira versão parece superar o GWT-EXT em muitos quesitos. O maior dele, acredito eu, seja os memory leak’s. A Isomorphic Software, empresa que desenvolve o SmartClient, diz que o mesmo é livre de memory leak’s. E pelos clientes deles, acredito que eles não iam falar apenas pelo “marketing”. Para quem utiliza GWT-EXT ou até mesmo ExtJS, sabe que o mesmo tem graves problemas com referências circulares em JS, “orphan nodes” e outras coisas. Para aplicações realmente grandes, isso se torna um grande problema, por a aplicação ficar acumulando a memória do navegador com coisas que deveriam ser eliminadas.

Para a versão 3(ou 2.3, não me lembro) do ExtJS, eles prometem acabar com esses problemas. Mas temos um problema aí. A licença. Até a versão 2.0.2 do ExtJS tinhamos uma licença como LGPL. A partir da versão 2.1, a licença foi alterada para GPLv3. E GPLv3 é(me corrijam se eu estiver errado) uma licença que te obriga a compartilhar o código, e “contamina” todos os projetos que utiliza código licenciado com a mesma. Ou seja, é uma licença que não serve para ser utilizada comercialmente, pois nesse caso o código necessita ser restrito, para grande parte das aplicações(não, o mundo não é tão ideal como o Stallman quer). E nesse caso, por caso disso, o GWT-EXT não pode acompanhar a evolução do ExtJS. O GWT-EXT ficou restrito a versão 2.0.2 do ExtJS, a última em LGPL. E no caso do ExtJS, ele tem LGPL misturado com uma licença própria, que impede de criar um fork do ExtJS. Então o melhor a ser feito foi tentar corrigir os problemas do ExtJS via GWT-EXT, para as aplicações que já existem não ficarem ser suporte e criar algo novo que possa ser evoluir para novos usuários. E aí que entra o SmartGWT.

O SmartClient era de código fechado até 2007. Eles da Isomorphic abriram o código e licenciaram como LGPL. E prometem mante-lo assim. E apoiam o projeto do SmartGWT. Ou seja, tudo caminha para que o SmartGWT seja uma ótima alternativa para o GWT-EXT. Tudo isso se os Lordes de Kobol concordarem. heheeh.

Links:

SmartGWT: http://code.google.com/p/smartgwt/

SmartClient: http://www.smartclient.com/