3.2. Antecedentes Tecnológicos

Esta sección proporciona una introducción a varias tecnologías y diseños en los cuales Vaadin está basado: las aplicaciones web basadas en AJAX en general, Google Web Toolkit, y el formato de intercambio de datos JSON. Este conocimiento no es necesario para usar Vaadin, pero proporciona algunos antecedentes, si necesita hacer extensiones de bajo nivel a Vaadin.

3.2.1. AJAX

AJAX (JavaScript y XML asincrónico) es una técnica para desarrollar aplicaciones web con la interacción de las respuestas del usuario, similar a las aplicaciones de escritorio tradicionales. Mientras que JavaScript este habilitado para las páginas HTML puede recibir nuevo contenido sólo con actualizaciones de la página, las páginas con AJAX habilitado envían la interacción del usuario con el servidor utilizando una solicitud asincrónica y reciben el contenido actualizado en la respuesta. De esta manera, sólo una pequeña parte de los datos de la página pueden ser cargados. Esta meta se logra usando un determinado conjunto de tecnologías: XHTML, CSS, DOM, JavaScript XMLHttpRequest y XML.

Con todo el alboroto y el estruendo que recibe, AJAX, es esencialmente hecho posible gracias a una sencilla API, es decir, la clase XMLHttpRequest en JavaScript. La API está disponible en todos los principales navegadores y, a partir del 2006, la API está en camino a convertirse en un estándar del W3C.

Las comunicaciones entre el navegador y el servidor por lo general requieren de alguna clase de serialización (o clasificación) de objetos de datos. AJAX sugiere el uso de XML para la representación de datos en las comunicaciones entre el navegador y el servidor. Mientras que la versión 4 de Vaadin utiliza XML para el intercambio de datos, la versión 5 utiliza JSON más eficientemente. Para obtener más información acerca de JSON y su uso en Vaadin, véase la Sección 3.2.3, "JSON".

Si es un principiante en Ajax, la Sección 12.1, "Caracteristicas Especiales de Aplicaciones AJAX", trata sobre la historia y motivaciones para aplicaciones web basadas en AJAX, así como algunas características especiales que diferencian tanto las aplicaciones web tradicionales como las aplicaciones de escritorio.

3.2.2. Google Web Toolkit

Google Web Toolkit es un kit de desarrollo de software para desarrollar aplicaciones web del lado cliente de forma fácil, sin necesidad de tener que utilizar directamente JavaScript u otras tecnologías de navegador. Las aplicaciones que utilizan GWT son desarrolladas con Java y compiladas en JavaScript con el Compilador de GWT.

GWT es esencialmente una tecnología del lado del cliente, normalmente se utiliza para desarrollar la lógica de la interfaz de usuario en el navegador web. Las aplicaciones de GWT necesitan comunicarse con un servidor utilizando llamadas RPC y la serialización de cualquier dato. Vaadin oculta de manera eficaz todas las comunicaciones cliente-servidor, permite al usuario manejar la lógica de interacción en un servidor de aplicaciones, y les permite el desarrollo de software en un único servidor de aplicaciones. Esto hace mucho más simple la arquitectura de una aplicación web basada en AJAX.

Vaadin usa GWT para hacer interfaces de usuario en el navegador web y manejar las tareas de bajo nivel de interacción del usuario en el navegador. El uso de GWT es prácticamente invisible en Vaadin para las aplicaciones que no necesiten ningún componente GWT personalizado.

Vea la Sección 3.4, "Motor del Lado del Cliente" para una descripción de cómo se utiliza GWT en el Motor de Lado del Cliente de Vaadin. El Capítulo 11, Desarrollar Nuevos Componentes proporciona información sobre la integración de los componentes de la interfaz de usuario basada en GWT con Vaadin.

3.2.3. JSON

JSON es un formato ligero de intercambio de datos que es fácil y rápido de generar y analizar. Con la tecnología actual del navegador se dice que los mensajes JSON son posiblemente cien veces más rápido de analizar que XML. El formato es un subgrupo del lenguaje JavaScript, que permite evaluar los mensajes JSON directamente como expresiones JavaScript. Esto hace que JSON sea muy fácil de utilizar en aplicaciones JavaScript y por lo tanto también en aplicaciones AJAX.

El Motor del Lado del Cliente de Vaadin utiliza JSON a través de Google Web Toolkit, que soporta comunicaciones JSON en el paquete com.google.gwt.json.client. Junto con la optimización de actualización avanzada y el almacenamiento en caché, Vaadin es capaz de actualizar los cambios en la interfaz de usuario al navegador de una forma muy eficiente.

El uso de JSON es completamente invisible para un desarrollador que utiliza Vaadin. La implementación de la serialización del cliente-servidor en los widgets personalizados utiliza interfaces abstractas que se pueden implementar como cualquier formato de intercambio de bajo nivel, tales como XML o JSON. Detalles sobre las comunicaciones JSON se ofrecen en la Sección A.2, "Renderizar JSON".



Anterior
Capítulo 3. Arquitectura
Siguiente
3.3. Aplicaciones como Sesiones de Servlets Java

No hay comentarios.:

Publicar un comentario