The disadvantages of the Google Web Toolkit
However, this comes at a cost. There are two major disadvantages to using GWT:
- The time a development cycle (deploy, test, adjust, redeploy) takes.
When the code has been deployed to Google's 'hosted mode' browser, many code changes can be tested within a matter of seconds, by 'refreshing' the webapp. Think of it as automatic hot redeploy. Deploying the code to that browser currently takes around a minute, which wouldn't be a problem, if it weren't for the fact that not all code changes can be tested without a redeploy. A minute per development cycle is just too long, even if it affects only 10% of the cycles.
- The learning curve.
To use GWT properly, you are forced to use decent MVC and client-server design patterns. This doesn't sound bad and for a couple of seasoned programmers it isn't. Unfortunately, for junior programmers the learning curve seems to be rather steep.
We will have to see how fast GWT adapts when a new browser enters the market, but given the fact that there are rather long 'beta' periods and the fact that no major browser besides IE/FF/Safari/ is to be expected (Chrome is Webkit-based, so that one is basically covered by Safari support), I'm not really affraid that our customer will be disappointed.
No need to emphasize your own stupidity
@Tuur die poept: This is an English blog. Please comment in English.
But when I look at the Wiki-link the author posted in his first line of this blog, not a single sentence or term from that Wiki-page seems to be related to the Toolkit or its technology. So in effect; maybe Google has misled people in believing in the software or some people still believe that software can develop itself flawlessly with minimum/no interaction from the designer.
The disadvantage starts from the same statement. GWT takes the web layer programming to JAVA. If you know JAVA, probably you will never look out for an alternative language to write your business logic. It's self sufficient and great. But when it comes to writing configurations for a JAVA application. We use property files, database, XML etc. We never store configurations in a JAVA class file. Think hard, why is that?
This is because configuration is a static data. It often require hierarchy. It is supposed to be readable. It never requires compilation. It doesn't require knowledge of JAVA programming language. In short, it is a different ball game. Now the question is, how it relates to our discussion?
Now, lets think about a web page. Do you think when we write a web page we write a business logic? Absolutely not. Web page is just a configuration. It is a configuration of hierarchical containers and fields. We need to write business logic for the data that will be captured from and displayed on the web page and not to create the web page itself.
Previous paragraph makes a very very strong statement. This will explain why HTML and XML based web pages are still the most popular ones. XML is the best in business to write configurations. A framework must allow a clear separation of web page from business logic (the goal of MVC framework). By doing this a web designer will be able to apply his skills of visualization and artistry to create brilliant looking web pages just by configuring XMLs and without being bothered about the intricacies of a programming language. Developers will be able to use their best in business JAVA for writing business logic.
Finally, lets talk about the repercussions in direct terms. GWT breaks this principal so it is bound to fail. The cost for developing GWT application will be very high because you will need multiskill programmers to write web pages. The required look and feel will be very hard to achieve. The turn around time of modifying the web page will be very high because of unnecessary compilation. And lastly, since you are writing web pages in JAVA it is very easy to corrupt it with business logic. Unknowingly you will introduce complexities that must be avoided.
But by not using it you are missing the object oriented programming from Web Pages. Quite bad. I discussed these concepts at length on my website http://ercilla.webs.com. I have also introduced an amazing framework Ercilla Web. Hope you will find it great.
Comments are closed