Im letzen Blogpost ging es um die zunehmende Bedeutung von Java-Script und Ajax im Bereich der Rich Internet Application Technologien. Bereits mehrfach bemängelt wurde das Entwicklungsmodell und der Toolsupport für Java-Script. Es gibt zwar mit Netbeans, Aptana u.v.a.m. Tools, die die Programmierung mit Java-Script unterstützen, sie sind aber von ihrem Featurereichtum meilenweit von dem entfernt, was bei anderen Sprachen möglich ist. Ein Grund liegt auch in der Sprache, die viele Dinge, die Integrated Development Environments (IDE) möglich machen, unterbindet. Und letztlich – ganz subjektiv – macht die Programmierung mit Java-Script nicht sonderlich viel Spaß und die vielen Frameworks lindern diese Not nur teilweise.
Google hat schon sehr früh das Potential von Ajax erkannt und gleichzeitig die oben genannten Problempunkte adressiert und eine Möglichkeit geschaffen, Ajax Anwendungen zu erzeugen, die Ihresgleichen sucht: Das Google Web Toolkit oder kurz GWT. GWT ist mittlerweile in Version 1.6 erschienen und man kann schon seit einiger Zeit von einer ausgereiften Technologie sprechen. Nahezu alle Google Webanwendungen (inklusive von Google Wave) sind mit GWT erstellt worden.
GWT löst die lästige Java-Script Programmierung indem man in einer ausgewachsenen Sprache – namentlich Java – programmiert und dann seine Java Sourcen in eine Ajax Anwendung “kompiliert” (wobei natürlich kein binäres Kompilat entsteht sondern nur hochoptimiertes Java-Script). Durch diesen Geniestreich löst Google die Unzulänglichkeiten von Java-Script, denn es wird ausschließlich in Java programmiert. Zum anderen löst Google die Unterstützung durch Tools, denn es liefert nicht nur ein GWT-PLugin für Eclipse mit, vielmehr sind auch alle anderen für Java gedachten Eclipse-Plugins möglich. Auch weitere Tools aus dem Java Umfeld wie Continious Integration, Code Metrics und Analyse sind möglich. Auch die weiteren Vorteile der Java-Technologie wie die leichte Backend-Integration, die Verfügbarkeit qualifizierter Entwickler und die umfangreichen Bibliotheken dienen dem GWT-Ansatz.
Mit dem GWT muss sich der Web 2.0 Entwickler nicht mit Java-Script beschäftigen, auch nicht mit Cross-Browser-Kompatibilität und den ganzen Folgeproblemen, sondern kann wie gewohnt seine Java-Klassen schreiben und entwickelt so mächtige Anwendungen wie GoogleMail etc.