Thursday, December 10, 2009

GWT-Ext and Ext-GWT -- some experiences

This fall I started two GWT projects simultaneously. Title of first project was GWT web application development - the specifications were all well written and it was understood that I have to code the application in GWT-Ext. The title of second project was GWT/GXT front end - The specifications were all dirty and difficult to understand, some of the pages were handwritten and scanned. The deadline of second project was difficult. After submitting second milestone of the first project I started coding second project and created almost all the screens in one day. I coded all the screens in GWT-Ext and sent the application to the client with all the source code. He was really shocked and he told me that his previous coder took one month to design these screens. He then sent me the previously written code. When I opened the code the first thing that I noticed was it had used extjs libraries. Now I was shocked oh I had to use Ext-Gwt(GXT) instead of GWT-Ext. I informed the client about it. I was thinking that he might say that using GWT-Ext is fine as it is free, but he said that he wants it in Ext-GWT as he has already purchased the license. So I quickly started to write the application in Ext-GWT, I reused the prewritten code as I had never used Ext-GWT. Soon I got used to of it as it is pretty much similar to GWT-Ext.

Ext-GWT or GXT is a library from famous ExtJs team. It has really powerful and pleasant layout components are easily customizable via css or java code. If you want to display records in tree, grid, combo or tables its proxy-loader-store mechanism is really good even though it is difficult to understand but once you grab it you can easily and quickly create such elements in your application.

When I started coding the second application my thoughts were that gxt is not free so it should be better then GWT-Ext and I assumed that I would get better support at their forum. During my GWT-Ext coding I was caught into several troubles especially in cross browser issues. I had to handle cross browser issues by various tricks in my code. For other problems I had to Google again and again. I was thinking that in gxt I will not be facing too many issues. Everything went fine during my development, but when I ran the application in firefox, I was frustrated with all their bogus cross browser slogans. Drag and drop was not working in firefox and chrome. Grids were not looking good and etc.

I searched gxt's forums and couldn’t find good responses. While in GWT-Ext my experience was different. If you want good support for gxt you should avail paid services at their forum, while in GWT-Ext everything is free.

To me GWT-Ext both are similar and if someone ask me to recommend which library to use my vote goes to GWT-Ext not only because it is free but also because I found good community support at their forum.

My final point for both the libraries is that both are awesome but both have limitations when it comes to cross browser functionality and both fail to provide cross browser widgets. To me that is acceptable as it is nearly impossible to assure that each and every component in the library will behave as expected in at least three major browsers (IE, firefox and chrome).

No comments:

Post a Comment