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).
Lassen Sie uns Ihre drei Hauptbeschwerden eins nach dem anderen ansprechen.
Dies ist jetzt wirklich viel besser in vielerlei Hinsicht.
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.
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.