Jul 27

Okay, it’s still not time to stop holding your breath as I’m not fully back yet. My personal issues are (as long as they are… sigh) close to finish, and I can finally say that a lot of those issues are sorted out already – For example, I have a computer now!

However, I’ve been playing around with GWT, the Google Web Toolkit, and been really impressed with it. I’ve seen a couple major points using it that I really enjoyed, and I will bring them up here. Obviously this is not a full list, I’ve barely played with it enough to say that I know half of the stuff one is able to do with GWT, but I have some of my own first-hand perspectives already.

  • No JavaScript knowledge required If you’re just a user of the framework, which I am for the matter of discussion, you do not need to know JavaScript in order to write dynamic content, be it client-side such as rolling frames, docking panels or scheduled “multi-threading” tasks, or server-side calls using XMLHttpRequests (aka AJAX). The GWT compiler takes care of the work, translating code you’ve written in Java – That is, UI controls very similar to Swing’s, JRE emulation classes for java.util and java.lang, and serialization and deserialization of your own classes – into JavaScript and from that serialize back to Java when a remote service call is called back. All that is encapsulated to a Servlet, ready to use.
  • Separation between dynamic and static content Even though the programmer can still be the one to write the static content, GWT allows you to retrieve a specific DIV item and treat it as a panel, stacking controls on it as well as other panels. This gives you the project leader the ability to divide the work well between the web designers doing all the HTML goodies, and the dynamic content writers, which write code in their language of choice (Java, what else?) and then stack it all into controls on a prepared panel, made available for them by the web UI guys. Reminds me a bit of the simplicity of Tapestry, where UI is written and then replaced by Tapestry components.
  • GWT Studio A framework is only as good as how comfortable it is to write in it. It is obvious to almost anyone that writing a framework which needs to synchronize information between HTML and Java code, between different interfaces and implementations of RPC infrastructure, and with client-server serialization to deal with, that it might be a lot of work doing it without a proper IDE. Fortunately, JetBrains’ IntelliJ has integrated GWT Studio, which has intentions (“quick-fixes”), refactoring and inspections already suited for the job right now in their Early Access Program. It’s even better to hear that the plug-in is coming out of the hands of Alex Tkachman, JetBrains’ COO (Chief of Operations). Speaking of Alex, up until recently he was the Director of Marketing if I remember correctly, and I wish him all the best in his new role! Kudos for the plug-in and for the new role, Alex!

That’s it for now. I really think that Google has something unique here. Today, just playing with it for a few minutes, I’ve created a small login dialog, which moves left and right anxiously if the password is wrong. This was written in plain Java, but ran on my Explorer and Mozilla windows without a glitch, with no applet or server-side code at work. I will post the code for it if wanted, I think it’s a really cool example of the work that can be done with GWT. Obviously, for examples on all of their components, see the Kitchen Sink demo!

Related Posts with Thumbnails

One Response to “Some GWT Excitement”

  1. Avoiding getter and setter pairs in GWT’s RequestFactory Says:

    [...] web toolkit) is a great development toolkit for web applications. I’ve been following it for a white now (including two somehwat popular posts about drag and drop and about enums, back when those [...]