Das Web 2.0 und damit Techniken wie AJAX sind in aller Munde. Aber wie lassen sich damit anspruchsvolle Anwendungen entwickeln? Eine Möglichkeit für versierte Java-Entwickler stellt Michael Seemann in seinem Buch vor: Das Google Web Toolkit oder kurz GWT. In einer kurzen Einführung wird anhand des klassischen HelloWorld-Beispiels in die Funktionsweise des Tookits eingeführt. Hier erfährt man, wie man die Client Seite einer Webanwendung in Java entwickelt, wie man sie im Hosted Modus debuggt und anschließend über den GWT-Compiler in eine normale HTML-JavaScript-Seite übersetzt. Abgeschlossen wird die Einführung mit den RPC-Möglichkeiten und der Internationalisierung der Oberfläche.
Der Schwerpunkt des Buchs liegt aber in der Architektur der Anwendung mit den Zielen parallele Entwicklung, Wartbarkeit und Minimierung von Problemen durch die eingeschränkten Möglichkeiten des GWT-Compilers. Die Darstellung der Architektur beginnt mit dem Beispiel „Fitnesstagebuch“ und der Aufteilung auf diverse Eclipse-Projekte. Für alle Eclipse-Entwickler wird auf die Konfiguration eingegangen, wer eine andere IDE einsetzt, muss den Transfer selbst erbringen. Im Anschluss daran wird das MVC-Prinzip auf eine GWT-Webanwendung übertragen und im Beispiel durchexerziert. Anhand des Beispiels erfolgt jeweils eine genaue Erläuterung der Gründe, warum eine Komponente genau in diesem Package oder Projekt landet oder welche Bedingungen auf Grund des GWT beachtet werden müssen. In der gleichen Tiefe werden die RPC-Möglichkeiten ausgelotet und implementiert, auch fehlen nicht die Darstellung der Sicherheitsproblematik und Lösungsansätze dazu. Wer eine stabil laufende Anwendung entwickeln und verteilen möchte, findet in einem weiteren Kapitel alle notwendigen Hinweise, die es in diesem Zusammenhang zu beachten gilt. Fehlen darf natürlich auch nicht ein Exkurs über die Einbindung von Fremdbibliotheken, vorgestellt unter anderem am Beispiel von Google Maps. Denn was wäre das Web 2.0 ohne Mashups?
Das Buch ist ohne Einschränkung empfehlenswert. Es gibt die Projekterfahrung des Autors wieder und versucht nicht, alle Komponenten des GWT zu beschreiben. Vielmehr zeigt es auf, in welchen Situationen das GWT einsetzbar ist und in welchen man sich besser nach einer anderen Lösung umschauen sollte.








