GWT es un framework creado por Google para crear RIA's
(Rich Internet Applications) basadas en HTML y JavaScript. Las aplicaciones
AJAX creadas con este framework tienen alta compatibilidad con los navegadores,
capacidad de depuración y soporte para internacionalización. Y como sucede con
este tipo de aplicaciones, no es necesario el uso del botón "Atrás"
del navegador o actualizaciones de la página para realizar las operaciones del
sistema.
Este framework permite escribir aplicaciones utilizando
el lenguaje Java, lo cual es una gran ventaja y ayuda a resolver muchos
problemas usando las características que ofrece este ecosistema para dar
soporte a la aplicación. El código escrito usando este framework para construir
aplicaciones web, es bastante parecido a las clásicas aplicaciones de Java
Swing o cualquier toolkit gráfico estándar, además, cuenta con la
característica de compilación al tiempo de escribir el código. En adición GWT
puede ser usado en el IDE de preferencia del desarrollador, todas las
herramientas y plug-ins disponibles para éste funcionarán también con GWT, todo
esto para ayudar a escribir el mejor código posible.
Compatibilidad entre navegadores
Por ota parte, GWT toma el tradicional código escrito en
Java, lo compila y traduce finalmente a HTML y JavaScript, lo cual implica que
el compilador puede hacer todas las operaciones necesarias para optimizar las
rutinas especificas de JavaScript de cada explorador y generarlas automáticamente
en tiempo de compilación para asegurar la interoperabilidad entre navegadores
en el menor tiempo posible.
La compatibilidad entre exploradores se logra mediante el envío del código que es adecuado para el explorador y el sitio del cliente, a esta información local se le denomina "propiedades del cliente" y de esta manera se determina que versión del sistema se usará. En seguida se anexa una descripción hecha por el equipo de google que ilustra este complicado proceso:
“En tiempo de compilación, el compilador determina todas las posibles permutaciones de un módulo y sus propiedades de cliente, desde las cuales produce múltiples compilaciones. Cada compilación está optimizada para un diferente conjunto de propiedades de cliente y se almacena en un archivo con terminación .cache.html.
En el despliegue, el explorador del usuario final solo necesita una particular compilación, la cual se determina por el mapeo de las propiedades del cliente y las permutaciones compiladas disponibles. Así, solo el código requerido por el usuario final es el que se descarga, nada más. Mediante una propiedad local del cliente, el proceso de inicio estándar definido en el archivo gwt.js elije la apropiada versión localizada de la aplicación, proveyendo facilidad de uso, rendimiento optimizado, y un mínimo tamaño de scripts.”
“En tiempo de compilación, el compilador determina todas las posibles permutaciones de un módulo y sus propiedades de cliente, desde las cuales produce múltiples compilaciones. Cada compilación está optimizada para un diferente conjunto de propiedades de cliente y se almacena en un archivo con terminación .cache.html.
En el despliegue, el explorador del usuario final solo necesita una particular compilación, la cual se determina por el mapeo de las propiedades del cliente y las permutaciones compiladas disponibles. Así, solo el código requerido por el usuario final es el que se descarga, nada más. Mediante una propiedad local del cliente, el proceso de inicio estándar definido en el archivo gwt.js elije la apropiada versión localizada de la aplicación, proveyendo facilidad de uso, rendimiento optimizado, y un mínimo tamaño de scripts.”
-Google’s Internationalization documentation.
Esto significa que el compilador de GWT creará un conjunto de archivos para cada posible cliente y posteriormente el cargador de GWT averiguará cual es la permutación compilada que le corresponde para que esta versión sea descargada al cliente.
Esto significa que el compilador de GWT creará un conjunto de archivos para cada posible cliente y posteriormente el cargador de GWT averiguará cual es la permutación compilada que le corresponde para que esta versión sea descargada al cliente.
Llamadas al Servidor
Respecto a las llamdas asíncronas al servidor, GWT provee
una infraestructura de Llamada a Procedimientos Remotos (RPC) lo cual se parece
mucho más al procesamiento de un evento estándar y ayuda a costumbrarse al
hecho de esperar por los resultados de la petición del procedimiento del
servidor. Aunque GWT proporciona este método de comunicación con el servidor,
no es el único disponible y dependerá de las necesidades de la aplicación el
uso de una diferente estrátegia de comunicación.
Mientras se está desarrollando la aplicación el código es traducido a bytecode y ejecutado por la máquina virtual, cuando está lista la aplicación el código se traduce finalmente a JavaScript para publicarlo en un servidor web.
Compatibilidad con otras Tecnologías
GWT no podría trabajar solo, este framework es totalmente compatible con otras tecnologías usadas en Java para mejorar la productividad de la aplicación. Algunas de ellas son:
Compatibilidad con otras Tecnologías
GWT no podría trabajar solo, este framework es totalmente compatible con otras tecnologías usadas en Java para mejorar la productividad de la aplicación. Algunas de ellas son:
• Hibernate, mapeo de objetos relacionales
• EclipseLink, mapeo de objetos relacionales
• Spring, framework de aplicación
• SiteMesh, framework de decoración, etc.
Víctor Rojas
Desarrollador
amigo coordial saludo gracias por compartir y si puedes compartir una aplicacion en GWT y conexion a base de datos porfavor publicala gracias
ResponderEliminarHola Vianey,
EliminarEl experto en este tema, Víctor Rojas, ya publicó un nuevo blog con tu solicitud, un tutorial para construir aplicaciones con Java y GWT.
Visítalo en: http://www.dawcons.com/blog_tutorial_contruyendo_aplicaciones_java_gwt.php
Que tal Vianey.
ResponderEliminarDawcons se renueva a DW. Este blog emigrará a
http://dwsoftware.mx/blog/ En dicho portal se continuará publicando nuevos artículos relacionados a tecnologías de la información.
Registrase y manténgase informado de las nuevas tecnologías, lenguajes y acontecimientos de esta industria.