3,1. Informacion general



3. Arquitectura


Este capítulo ofrece una introducción a la arquitectura de Vaadin a un nivel técnico.


3,1. Información general

El capítulo 1, era una introducción a la arquitectura general de Vaadin. Vamos a profundizar mas en ella.
Figura 3.1, “Arquitectura Vaadin” muestra la arquitectura básica.

Vaadin és una aplicación web de API (Aplicaciones Programación Interacciones - comunicar 2 softwares).
És un grupo de piezas de “interacciones de usuario”.
Són temáticas para manejar la apariencia.
También és un prototipo de datos/numeros que encuaderna las piezas de “las interacciones del usuario” directamente en datos.
Detrás de las cortinas tambien utiliza un “Adaptador Final”, para recibir las peticiones de los navegadores web, y dar respuestas acompanyando a las páginas.

Una aplicación que utiliza Vaadin, se activa como un servlet en un Server web Java, entregando solicitudes HTTP. El “Adaptador Final” recibe solicitudes del usuario a través del Java Servlet API (Aplicaciones Programación Interacciones - comunicar 2 softwares), y traduce las solicitudes en “Interacciones del usuario Sucedidas” para una session/conferencia exclusiva. Las conferencias/sessiones son seguidas utilizando cookies. “Los sucessos” se ajuntan con “las piezas de interaccion del usuario” y se entregan a la aplicación, que las maneja con “Escuchadores”. Si “El metodo/logica de la aplicación” canvia “las piezas de las interacciones de usuario” en el lado del server, “El adaptador final” acompanya “las piezas de las interacciones de usuario” al navegador web, este proceso se le llama “Generar una respuesta”. El motor del lado del cliente funcionando en el navegador recibe “la respuesta” y la utiliza para hacer cualquier canvio necessario a la pagina web del navegador.

La punta del iceberg de “una aplicacion de un usuario” esta hecho de una “classe de applicacion” que recibe de “com.vaadin.Application”. Esta “Classe” crea “las piezas de interacciones del usuario” que nessesita, recibe “Sucesos” que ocurren "las piezas de interacciones del usuario, i maneja canvios en las piezas. Información mas detallada la encontraras en el Capitulo 4 - Escribiendo una aplicación web.

Las partes principales de la arquitectura y su utilidad son los siguientes:


1 - Piezas de interacciones de un usuario:
Las “interacciones de los usuarios” se apoyan en “las piezas de interacciones de los usuarios” que son creadas y expuestas por la aplicación. Cada pieza de un lado del server, tiene un “Contra-pieza” equivalente. Con el que el usuario interactua. Las piezas del lado del server se pueden canalizar gracias al “Adaptador Final”. Las piezas del lado del usuario tambien pueden canalizar “las interacciones del usuario” de vuelta a la aplicación, que són recividas con las piezas del lado del server como “Sucesos”. Las piezas envian estos “sucesos” al “Metodo/Logica de las interacciones del usuario”. La mayoria de piezas estan unidas a una fuente de datos/numeros. Para una completa descripción de la arquitectura de “las piezas de interacciones de los usuarios”, mira el Capitulo 5 - Piezas de interacciones de los usuarios.


2 - Motor del lado del Cliente
El motor del lado del cliente en Vaadin maneja la ayuda en el navegador web usando “El set de herramientas Google Web (GWT)”. Comunica las interacciones del usuario y “las interacciones del usuario canviadas” con el “Adaptador final” del lado del server usando el “lenguaje explicado de las interacciones del usuario” (UIDL), un lenguaje basado en JSON (JavaScript Object Notation) (És un tipo de format TEXT entre ordinadors per intercanviar data). Las comunicaciones usan las solicitudes HTTP y HTTPS instantaneas. Mas informacion en el Capitulo 3.4, “Motor del lado del Cliente”.


3 - Adaptador Final
Las “piezas de interacciones de los usuarios” no se ayudan a si mismas directamente como en una pagina web, utilizan el Adaptador final. Esta capa iconográfica permite a los usuarios poder usar las Aplicaciones Vaadin con cualquier navegador. Las versiones 3 y 4 solo podian utilizar HTML y AJAX simple, ahro con Vaadin 5 puedes utilizar ayuda de AJAX avanzado utilizando “El pack de herramientas Google Web (GWT)”. Imaginate un navegador que no estuviera basado en HTML, pues nosotros podriamos hacerlo funcionar tan solo escribiendo un nuevo adaptador. Tu applicacion seguira viendo solo Vaadin API (comunicacio entre 2 softwares). Para permitir este tipo de capas iconograficas, “las piezas de interacciones de los usuarios” comunican sus canvios al “Adaptador final”, quien acompanya los canvios al navegador del usuario. Cuando el usuario hace algo en la pagina web, los sucesos son comunicados al “Adaptador final” a través de solicitudes instantaneas AJAX. El “adaptador final” envia los sucesos del usuario a las “piezas de interacciones de los usuarios”, y estas envian los sucesos al “metodo/logica de las interacciones del usuario”.


4 - Temáticas
Las interacciones del usuario se separan entre “exibir” y el metodo/proceso/logica. Mientras “las interacciones del usuario” son manejadas en lenguaje Java, la “exibición” utiliza la tematica en lenguage CSS. Vaadin provee de tematicas standard. Las tematicas de usuario pueden ademas de usar hojas de disenyo, incluir templates HTML que usan disenyos personalizados y otros recursos, como imagenes. Las temáticas son explicadas en detalle en el Capitulo 8 - Temáticas.


5 - “lenguaje explicado de las interacciones del usuario” (UIDL), (És un tipo de llengua entre PC per intercanviar data)
El AdaptadorFinal utiliza las interacciones de los usuarios a la pagina web y cualquier canvio producido utilizando "El lenguaje de las interacciones del usuario (UIDL). Las comunicaciones UIDL utilizan el lenguaje JSON, que es una livianda traductora de formato de datos que és eficaz en traducir lenguaje AJAX en el Navegador. Mas detalles mirar la sección 3.2.3. “JSON” i Appendix A, Lenguaje explicado de las interacciones del usuario (UIDL)


6 - Sucessos
Las interaciones del usuario con “las piezas de las interacciones de los usuarios” crea sucessos, que son el primer paso en el lado del cliente utilizando JavaScript i luego pasan todo el camino a traves del server HTTP, el adaptador final, i “las piezas capas del usuario” a la aplicación. Mirar mas detalles en el Capitulo 3.5 “Eventos y escuchadores”.


7 - Pasos de Datos
A parte del “los pasos de interacciones de los usuarios”, Vaadin utiliza “pasos de datos” para “interaccionar datos presentados” en “las piezas de interacciones de los usuarios”. Usando “pasos de datos”, “las piezas de interacciones de los usuarios” pueden subir datos a la aplicacion directamente, sin tener que pasar por ningun control. Todas “las piezas de interacciones de datos” utilizan estos “pasos de datos” internamente, pero tambien pueden ser redireccionados a fuentes de datos externas. Por ejemplo, puedes encuadernar una “pieza tabla” a la respuesta de una consulta SQL. Para mas detalles sobre “los pasos de datos” de vaadin, dirigete al Capitulo 9 - Uniendo piezas con datos.