---
title: 'Buchkritik “Google Web Toolkit . GWT Java AJAX Programming. A practical guide to Google Web Toolkit for creating AJAX applications with Java”'
url: 'https://tutego.de/blog/javainsel/2010/03/buchkritik-%e2%80%9cgoogle-web-toolkit-gwt-java-ajax-programming-a-practical-guide-to-google-web-toolkit-for-creating-ajax-applications-with-java%e2%80%9d'
markdown: 'https://tutego.de/blog/javainsel/2010/03/buchkritik-%e2%80%9cgoogle-web-toolkit-gwt-java-ajax-programming-a-practical-guide-to-google-web-toolkit-for-creating-ajax-applications-with-java%e2%80%9d.md'
date: '2010-03-05'
description: 'Prabhakar Chaganti. Packt Publishing. ISBN 1847191002. 15. Februar 2007. 248 Seiten Didaktisch ist das Buch deutlich besser aufgebaut als GWT in Action, allerdings geht es deutlich weniger in die Tiefe. Während die Autoren ein einfaches Beispiel zur Internationalisierung angeben und dann schreiben …'
taxonomy:
  category:
    - Rezension
---

# Buchkritik “Google Web Toolkit . GWT Java AJAX Programming. A practical guide to Google Web Toolkit for creating AJAX applications with Java”

![Illustration einer tropischen Insel mit Palmen und einem hohen Berg](https://tutego.de/blog/javainsel/user/themes/tutego/images/insel-cover.jpg)# Java Blog für Programmierer

[Java Blog für Programmierer](https://tutego.de/blog/javainsel/)

## Buchkritik “Google Web Toolkit . GWT Java AJAX Programming. A practical guide to Google Web Toolkit for creating AJAX applications with Java”

05.03.2010 · [Christian Ullenboom](https://tutego.de/blog/javainsel/author/admin/)

*Prabhakar Chaganti. Packt Publishing. ISBN 1847191002. 15. Februar 2007. 248 Seiten*

Didaktisch ist das Buch deutlich besser aufgebaut als GWT in Action, allerdings geht es deutlich weniger in die Tiefe. Während die Autoren ein einfaches Beispiel zur Internationalisierung angeben und dann schreiben „The I18N support in GWT is quite extensive and can be used to support either simple or complicated internationalization scenarios.“ geht hier das Hanson-Tacy-Gespann deutlicher in die Tiefe. Sehr gut gefallen haben mir den praktischen Beispiele, die Ajax so bekannt gemacht hatten, etwa die Listen mit Kandidaten bei eingegebenen Suchbegriffen oder weiteres. Allerdings gibt es auch ein paar Schwachpunkte. Zunächst betrifft es die GWT-Version: das Buch basiert auf GWT RC1 von Ende 2006. So kommen Neuigkeiten aus GWT 1.4 (aktuell ist GWT 2) nicht zur Sprache. Zudem ist die Formatierung oft ungenügend. Es beginnt schon früh mit dem Satz:

> When we wish to draw your attention to a particular part of a code block, the relevant lines or items will be made bold:
> 
> ```java
> calendarPanel.add(calendarGrid);
> calendarPanel.add(todayButton);
> ```

Und dann steht das noch nicht mal in der Einleitung in bold.

Einrückung und Formatierung sind im ganzen Buch sehr merkwürdig. Die Listings besitzen oft am Anfang eine sehr hohe Einrückung, um dann die verbleibenden Zeilen an den unmöglichsten Stellen umbrechen zu müssen. Einige Fehler sind sicherlich nur Unachtsamkeiten. Wie die folgende:

> Primitive types—character, byte, short, integer, long, **B**oolean, float, and double Primitive type wrapper classes—**c**haracter, **b**yte, **s**hort, **i**nteger, **l**ong, `Boolean`, **f**loat, and **d**ouble

Oder dann zeigt ein Screenshot bei den Primzahlenbeispielen eine Zahl in Anführungszeichen, doch im Quellocode steht:

```java
Window.alert("Yes, "+ primeNumber.getText() ...
```

Es fehlt hier, genauso wie bei der Fallunterscheidung beim No, das einleitende Hochkomma. Bei Konstruktoren ist ein einfaches `super();` sicherlich nicht als explizite Anweisung nötig. Einige Kritikpunkte betreffen die Namensgebung. Da heißt dann eine Methode großgeschrieben `ShowText()` oder `onEventpreview()`. Stilistisch lässt sich vielleicht noch `for (; rs.next();)` mit einem einfachen `while( rs.next() )` schreiben. Und warum sehe ich das bei so vielen Autoren Felddeklarationen der Art

```java
private String[] items = new String[]{"apple", "peach", "orange", "banana", "plum", "avocado", ...
```

Wenn es auch einfach nur

```java
private String[] items = {"apple", "peach", "orange", "banana", "plum", "avocado", ...
```

heißen könnte? Viele Beispiele tragen im Quellcode für die GWT-Komponenten CSS-Zuweisungen wie

```java
searchText.setStyleName("liveSearch-TextBox");
```

Doch die CSS-Datei ist nicht angegeben! Für die Listings hätte das eigentlich auch wegfallen können—hier muss man die Beispiele von CD oder aus dem Internet nehmen. Mit den Styling ist auch eine andere Sache krumm. Statt <img border=’0′ src=’images/blank.gif’/> für eine Tabelle zu schreiben, wäre hier wohl CSS besser, also etwa ``. Bei den Schaltflächen müssen HTML-Zeichen nicht ausmaskiert werden:`new Button("<", this); new Button(">", this);`ist schlicht falsch. In der Abbildung auf Seite 41 taucht plötzlich eine Schnittstelle`RemoteServiceAsync`auf. Die angeblich selbst geschriebene Schnittstelle gibt es nicht, das sollte`PrimesServiceAsync`heißen. Beim Beispiel mit Auto Form Fill überträgt der GWT-RPC-Service eine`HashMap`mit den Daten. Eine interessante Alternative wäre, eine serialisierbare Bean zu deklarieren und diese zu versenden. Da kommt in den Beispielen nirgendwo vor. Platz nehmen recht viel Codeduplikate ein, da der Autor bei den Beschreibungen einen Aufbau gewählt hat, in dem erst der Quellcode als Tue-Dies-Anweisungen aufgeführt wird und später die zentralen Stellen beim Was-haben-wir-eigentlich-gemacht-Teil wiederholt. Das kostet natürlich Platz beim Druck und hätte kompakter ausfallen können. Einige Beispiele geben Beispiele für eine Ajax-Bibliotehk an, die sonst aber nicht so weit verbreitet ist. Eine Sache gibt es sogar, die im Action-Buch nicht steht – und die ich auch dort vermisste habe: wie man Dokumente lädt. Hier ist es:`HTTPRequest.asyncGet("customers.csv", new ResponseTextHandler() )`. Eine Auflistung der unterstützten APIs fehlt jedoch auch hier. In der Summe bleibt ein nettes gut lesbares Buch, welches schnell gelesen ist und auch nicht schwer ist.

Kategorien: [Rezension](https://tutego.de/blog/javainsel/category/rezension/)

[← Alle Beiträge](https://tutego.de/blog/javainsel/)

---

## Navigation

- Previous: [Buchkritik “GWT in Action. Easy Ajax with the Google Web Toolkit”](https://tutego.de/blog/javainsel/2010/03/buchkritik-%e2%80%9cgwt-in-action-easy-ajax-with-the-google-web-toolkit%e2%80%9d.md)
- Next: [Unentscheidbarkeit für Java-Programmierer](https://tutego.de/blog/javainsel/2010/03/unentscheidbarkeit-fur-java-programmierer.md)
