Hola:
Hasta ahora siempre he trabajado la parte de de cliente usando las tecnologías nativas: HTML, CSS y JavaScript. Recientemente he comenzado a usar SASS en vez de CSS y eso me ha llevado a querer dar un paso similar en el caso de JavaScript.
Hasta ahora siempre me he encontrado cómodo con él, pero reconozco que su naturaleza de tipos dinámicos me ha traído problemas en más de una ocasión. Lo suplí usando JsDoc y con la ayuda de mi querido NetBeans IDE. Pero no es lo mismo que usar tipos estáticos: no permite detectar muchos errores mientras escribes, la información provista por el IDE es mucho más escasa (en ocasiones nula) y hacer "refactoring" es muy arriesgado.
Por ello he buscado alternativas, como TypeScript y GWT. El primero me gusta, pero puestos a tener que compilar, casi prefiero escoger GWT, pues puedo usar el lenguaje y las herramientas que ya uso. Sé que "llego tarde a la fiesta", pues estos años GWT ha perdido fama con respecto a los frameworks de JavaScript. Pero aun así me gustaría saber si elegir GWT a día de hoy sería una buena opción.
Mi idea es escribir en Java lo que escribo en JavaScript. He visto que existe el proyecto GwtQuery y que todavía sigue siendo mantenido. Eso me ha dado más esperanzas todavía, ya que con él podría tocar el DOM sin recurrir a JS. También he visto que se puede envolver código JS existente (aunque sea farragoso) y suplir las carencias que uno pueda encontrar.
En definitiva, usaría GWT debido a:
■ Los tipos estáticos. Esto haría mi código menos propenso a errores. En teoría, también mejoraría mi productividad al poder usar las herramientas más complejas de mi IDE.
■ La modularidad del código. Podría organizarlo como hago ya en Java, lo que facilitaría su mantenimiento y entendimiento. He probado Dojo y Require.js, pero no me convence el aspecto de los módulos.
¿Qué opináis al respecto? ¿Merecería la pena gastar tiempo en aprender GWT con esos propósitos en mente?
Gracias.