Wie ist der aktuelle Stand der GWT-Entwicklung?

8

Ich habe in der Vergangenheit ein GWT-Projekt gemacht (GWT Version 1.4) und es war extrem schmerzhaft.
Die Schnittstelle ist mit Code aufgebaut (was sehr schlecht ist), erfordert viel langsames Kompilieren und Warten, der Komponententest war schrecklich. Ganz zu schweigen davon, dass die Integration mit Hibernate die nervigste Sache war.

Aber es scheint mir, dass GWT wirklich heiß unter Java-Entwicklern ist und ich überdenke es.

Haben Sie GWT 2.x ausprobiert? Ist es jetzt besser? Ich bin besonders an den drei vorherigen Punkten interessiert (langsames Kompilieren, UI-Erstellung und Komponententests).

    
Chiron 25.11.2010, 23:37
quelle

1 Antwort

13

Lassen Sie uns Ihre drei Hauptbeschwerden eins nach dem anderen ansprechen.

Langsame Kompilierung

Dies ist jetzt wirklich viel besser in vielerlei Hinsicht.

  • Die Zusammenstellung ist schneller geworden.
  • Der GWT-Compiler kann mehrere Permutationen parallel kompilieren.
  • Der (hässliche) "gehostete" Browser wurde durch ein Browser-Plugin im "Entwicklungsmodus" ersetzt, so dass Sie in Ihrem bevorzugten Mainstream-Browser ohne Kompilierung testen können.

Erstellen von Benutzeroberflächen

Ja. UiBinder .

Schreiben Sie HTML-Schablonen, die Elemente enthalten, die als Platzhalter für Widgets dienen. Elemente, die Bereiche darstellen (Widgets, die Widgets enthalten können), können Elemente enthalten, die andere Widgets repräsentieren.

Ja, es wird immer noch einen Aspekt beim Erstellen von Widgets in Java geben, aber das wird jetzt stark reduziert.

Komponententest

Wie war es vorher schrecklich? Ihr Logikcode kann weiterhin über JUnit ausgeführt werden. In letzter Zeit gab es einen viel stärkeren Schub in Richtung MVP-Design in GWT, so dass vermutlich viel mehr Code mit einfachem alten JUnit getestet werden kann.

GWT hat auch eine Art Unit-Test, bei dem ein nicht interaktiver Browser ausgeführt wird. Nach meiner Erfahrung kann dies in der Regel sicher vermieden werden, wenn viele JUnit-Tests sowohl für Client (Presenter) als auch für Server-Code verwendet werden.

    
Wesley 26.11.2010, 00:04
quelle

Tags und Links