Kit de herramientas web de Google

Kit de herramientas web de Google (GWT) Descripción de la imagen Gwt_logo.png.

Información
Desarrollado por Google
Última versión 2.9.0 (13 de mayo de 2020)
Versión avanzada 1.0 RC 1 (16 de mayo de 2006)
Depositar github.com/gwtproject/gwt
Escrito en Java y JavaScript
Sistema de explotación Linux
Tipo Kit de herramientas de widget de
marco de aplicación AJAX
Licencia Licencia de Apache versión 2.0
Sitio web www.gwtproject.org

Google Web Toolkit ( GWT ) es un conjunto de herramientas de software desarrolladas por Google , para crear y mantener aplicaciones web dinámicas que implementan JavaScript , utilizando herramientas y lenguaje Java . Es un software gratuito distribuido bajo los términos de la licencia Apache 2.0.

GWT hace hincapié en soluciones eficientes y reutilizables a los problemas que suele encontrar el desarrollo AJAX  : dificultad de depuración de JavaScript, gestión de llamadas asincrónicas, problemas de compatibilidad entre navegadores, gestión del historial y favoritos, etc.

Principio

GWT se basa en un concepto original: durante la fase de desarrollo, la aplicación se escribe en Java de la forma clásica, en un entorno de desarrollo integrado de Java, y se puede depurar con las herramientas habituales de Java. Una vez que la aplicación está lista para ser implementada, el compilador de GWT la traduce a JavaScript puro , con soporte automático y transparente para los principales navegadores ( Internet Explorer , Firefox , Chrome , Safari , Opera ). El código JavaScript generado utiliza HTML dinámico y técnicas de manipulación del Modelo de objetos de documento (DOM) para los aspectos dinámicos de la interfaz.

Este principio es posible gracias a los diferentes componentes de GWT:

GWT es un marco que deja libertad al desarrollador al no imponer una estructura demasiado rígida; Como su nombre indica, es una caja de herramientas que ofrece soluciones que facilitan el desarrollo de soluciones web / AJAX, aprovechando las herramientas y habilidades de Java existentes e ignorando la complejidad generalmente asociada a este tipo de tecnología.

Ficha técnica

Widgets disponibles

Encontramos en GWT un conjunto de widgets para construir una interfaz de usuario:

Siempre que sea posible y viable, los widgets de GWT utilizan el control HTML nativo equivalente (por ejemplo, Checkbox genera un elemento INPUT de tipo checkbox), pero también es posible crear widgets completamente sintéticos.

Aunque ofrece funciones más avanzadas que los componentes HTML, la biblioteca de widgets de GWT sigue siendo espartana cuando se trata de crear una GUI avanzada; por eso han surgido bibliotecas de terceros. Podemos citar :

Si bien los contenedores de bibliotecas de JavaScript de GWT a menudo son ricos en componentes, no siguen la filosofía de GWT de generar código JavaScript completamente desde Java.

Historial de versiones

Entornos de desarrollo

Por diseño, GWT es independiente de cualquier IDE y puede integrarse en cualquier. Sin embargo, existen complementos que facilitan el desarrollo de una aplicación GWT:

Finalmente, al mismo tiempo que GWT 1.6, Google lanzó un complemento para Eclipse que integra aspectos de GWT y Google App Engine .

Ventajas y desventajas

Versión 2.0

La versión 2.0 de GWT ofrece varias características nuevas en comparación con las versiones anteriores, que incluyen:

Como el nuevo "modo de desarrollo" ha eliminado la mayor parte del código escrito específicamente para una plataforma de destino, la nueva versión se distribuirá como un solo archivo (en lugar de uno por plataforma como era el caso de las versiones anteriores).

Productos de la competencia

Enfoque "estilo GWT" (el cliente está pregenerado):

Enfoque RIA clásico (HTML y JavaScript generados desde el servidor):

Marcos asociados

Notas y referencias

  1. Versión 2.9.0  " ,2 de mayo de 2020(consultado el 3 de mayo de 2020 )
  2. "  https://code.google.com/webtoolkit/versions.html  "
  3. Aspectos de seguridad
  4. (in) Developer's Guide - Accessibility Support, Google Code and WAI-ARIA Implementation in JavaScript UI Libraries - actualizado, The Paciello Group Blog , Steve Faulkner, julio de 2009.

Apéndices

Artículos relacionados

enlaces externos