David Geary’s talk on Google Web Toolkit was one of the highlights of the day. Oddly enough they held it in the polar room and kept it at a brisk 30 below! Aside from feeling like we were stuck in the North Pole, the presentation was informative and engaging, and David’s dry humor left us chuckling (the only warmth we could generate in that room). Have I mentioned that the room was cold?
If you’ve never heard of GWT, it’s yet another framework. This time it’s from Google and powers several but definitely not all of their client facing applications. It’s basic premise is that “Ajax is hard”, and so it does what it must to abstract things away like Javascript and offers awesome productivity boosts by allowing you to code Ajax-based applications almost entirely using Java. And the really cool thing is, you can debug your application, by stepping through Java code instead of using something like Firebug for Javascript. The team has come up with a lot of really innovative new solutions, to old problems. It also allows the programmer that is familiar with idioms like AWT, Swing, and SWT to understand much more rapidly the constructs needed to build a GWT app.
The five top features that GWT provides:
- Application generator for quickstart
- Convention over configuration
- Instant turnaround after changes
- Non-Ajax Ajax
- Awesome productivity
As GWT is heavily based on the idea that you want most of your interactions with the client to be Ajax based, they have different requirements for the client and server-side portions of code. Everything you code, if its a simple app without the need for external Javascript, will be in Java. The client-side code uses a subset of the Java packages, and allows you to run your app in Hosted mode, or Web mode. In Hosted mode the app runs via the JVM and can be stepped through using the debugger, and in Web mode it compiles your Java code to Javascript for work in a normal browser.
David is obviously a well seasoned presenter and made the process of learning more about GWT engaging. His session was chock full of demo’s and actually wrote code during the presentation to show how easy the creation could be. I think given the right circumstances, and a client willing to think outside the box, GWT is something you should add to your skill-set.
Be sure to check out our talk on Apache Wicket on Friday at 3pm in Breakout Room 1 - If you liked 5 Days of Wicket, you’ll love this in-depth hour and drop us a line if your company needs training in wicket: trainings@mysticcoders.com