Capítulo 1. Introducción

Este capítulo proporciona una introducción al desarrollo de software con Vaadin. Examinamos la filosofía del diseño detrás de Vaadin, su historia, y los últimos cambios importantes.

1.1 Información General

La pieza principal de Vaadin es la librería de Java que está diseñada para facilitar la creación y el mantenimiento de interfaces de usuario de alta calidad basadas en la web. La idea clave en el modelo de programación de Vaadin orientado en el servidor consiste en que este le permite que se olvide de la web y de programar interfaces de usuario como lo haría con cualquier programa de aplicación de escritorio de Java con herramientas convencionales, tales como AWT, Swing o SWT. Pero mucho más fácil.

Mientras que la programación web tradicional es una forma divertida de pasar el tiempo aprendiendo las nuevas tecnologías web, probablemente desee ser productivo y concentrarse en la lógica de la aplicación. Con el modelo de programación basado en el servidor, Vaadin se encarga de la gestión de la interfaz de usuario en el navegador y las comunicaciones AJAX entre el navegador y el servidor. Con el enfoque de Vaadin, no necesita aprender y depurar tecnologías del navegador, tales como HTML o JavaScript.

Figura 1.1. Arquitectura General de Vaadin

La Figura 1.1., "Arquitectura General de Vaadin" ilustra la arquitectura básica de las aplicaciones web hechas con Vaadin. Vaadin consiste en un framework del lado del servidor y un motor del lado del cliente que se ejecuta en el navegador como un programa de JavaScript, renderizando la interfaz de usuario y entregando la interacción del usuario con el servidor. La aplicación se ejecuta como una sesión de Servlets de Java en un servidor de aplicaciones Java.

Debido a que HTML, JavaScript y otras tecnologías de navegador son esencialmente invisibles a la lógica de la aplicación, puede pensar en el navegador web como una sola plataforma de cliente ligero. Un cliente ligero muestra la interfaz de usuario y comunica eventos del usuario con el servidor en un nivel bajo. El control de la lógica de la interfaz de usuario se ejecuta en un servidor web basado en Java, junto con su lógica de negocio. Por el contrario, una arquitectura normal de cliente-servidor con una aplicación cliente dedicada que incluye una gran cantidad de comunicaciones de aplicaciones específicas entre el cliente y el servidor. Esencialmente, eliminando el nivel de la interfaz de usuario de la arquitectura de la aplicación hace nuestro enfoque un método muy eficaz.

Así como el Motor del Lado del Cliente de JavaScript se ejecuta en el navegador, no se necesitan plugins del navegador para usar aplicaciones hechas con Vaadin. Esto le da una ventaja fuerte sobre frameworks basados en Flash, applets de Java, u otros plugins. Vaadin cuenta con el apoyo de GWT para una amplia gama de navegadores, de modo que al desarrollador no tiene que preocuparle la compatibilidad del navegador.

Detrás del modelo de desarrollo impulsado por el servidor, Vaadin hace el mejor uso de las técnicas de AJAX (JavaScript y XML Asíncrono) que hacen posible la creación de Aplicaciones Dinámicas de Internet (RIA) que son tan sensibles e interactivas como aplicaciones de escritorio. Si eres un principiante en AJAX, vea la Sección 3.2.1, "AJAX" para saber qué es y cómo las aplicaciones AJAX se diferencian de las aplicaciones web tradicionales.

Ocultos y bajo la capucha, Vaadin utiliza GWT, Google Web Toolkit, para renderizar la interfaz de usuario en el navegador. Los programas GWT están escritos en Java, pero compilados en JavaScript, liberando así al desarrollador de aprender JavaScript y otras tecnologías del navegador. GWT es ideal para implementar componentes avanzados de interfaz de usuario (o widgets en la terminología GWT) y la lógica de interacción en el navegador, mientras que Vaadin se encarga de la lógica de la aplicación real en el servidor. Vaadin está diseñado para ser extensible, y en efecto fácilmente puede utilizar cualquier tercera parte de los componentes GWT, además del repertorio de componentes ofrecidos en Vaadin. El uso de GWT significa también que todo el código tiene que ser escrito en Java puro.

El Framework Vaadin define una clara separación entre la presentación de la interfaz de usuario y la lógica y le permite desarrollarla por separado. Nuestro enfoque para esto son los temas, que determinan la apariencia visual de las aplicaciones. Los temas controlan el aspecto de las interfaces de usuario utilizando CSS y plantillas de páginas HTML (opcionales). Como Vaadin proporciona excelentes temas predeterminados, por lo general no necesita hacer mucha personalización, pero puede hacerlo si lo necesita. Para más información sobre temas, véase el Capítulo 8, Temas.

Esperamos que esto sea suficiente acerca de las características y la arquitectura básica de Vaadin por ahora. Puede leer más sobre esto más adelante en el Capítulo 3, Arquitectura, o saltar directamente a cosas más prácticas en el Capítulo 4, Escribir una Aplicación Web.



Anterior
Parte I: El Núcleo del Framework Vaadin
Siguiente
1.2. Ejemplo de Aplicación Paso a Paso

No hay comentarios.:

Publicar un comentario