2010-11-25 11 views
8

Hice un proyecto GWT en el pasado (GWT versión 1.4) y fue extremadamente doloroso.
La interfaz está compilada con código (lo cual es realmente malo), requiere una gran cantidad de compilación lenta y espera, la prueba de unidad fue horrible. Sin mencionar que la integración con Hibernate era lo más molesto.¿Cuál es el estado actual del desarrollo de GWT?

Pero me parece que GWT es muy popular entre los desarrolladores de Java y lo estoy reconsiderando.

¿Has probado GWT 2.x? ¿esta mejor ahora? Estoy particularmente interesado en los tres puntos anteriores (compilación lenta, creación de UI y pruebas unitarias).

+0

tiempo de compilación todavía es horrible, pero la depuración de rcp a través de maven es una gema y bastante rápido. – fasseg

Respuesta

13

Vamos a abordar sus tres quejas principales, una por una.

compilación lenta

Esto es realmente mucho mejor ahora en un número de maneras.

  • La compilación se ha vuelto más rápida.
  • El compilador GWT puede compilar varias permutaciones en paralelo.
  • El navegador de "modo alojado" (god awful) ha sido reemplazado por un complemento de navegador "modo de desarrollo" para que pueda probar en su navegador principal favorito sin compilación.

edificio de la interfaz de usuario

Sí. UiBinder.

Escribir "plantillas" HTML que incluyen elementos que actúan como marcadores de posición para widgets. Los elementos que representan paneles (widgets que pueden contener widgets) pueden contener elementos que representan otros widgets.

Sí, todavía habrá algunos aspectos de la composición de widgets en Java, pero esto ahora se ha reducido considerablemente.

Pruebas unitarias

¿Cómo fue horrible antes? Su código lógico aún se puede ejecutar a través de JUnit. Recientemente, ha habido un impulso mucho más fuerte hacia el diseño de MVP en GWT, por lo que, presumiblemente, mucho más de su código se puede probar con el antiguo JUnit.

GWT también tiene una manera de probar la unidad donde se ejecuta un navegador no interactivo. En mi experiencia, esto generalmente se puede evitar con seguridad cuando se utilizan muchas pruebas de JUnit tanto para el cliente (presentador) como para el código del servidor.

+0

Solo lamento tener solo un +1 para dar a esta respuesta. –

+0

En cuanto a la compilación de permutación, ahorramos aún más tiempo al usar 2 diferentes módulos GWT: uno para la configuración de desarrollo con IE8 e inglés, otro para nuestra compilación nocturna Hudson que compila para todos los navegadores y todos los idiomas admitidos. –

+0

@Frederic, esa es una buena idea. – Chiron

Cuestiones relacionadas