yop

yop
iivanniitha

domingo, 23 de mayo de 2010

Las aplicaciones RIA son un nuevo tipo de aplicaciones con más ventajas que las tradicionales aplicaciones Web. Esta surge como una combinación de las ventajas que ofrecen las aplicaciones Web y las aplicaciones tradicionales.

Normalmente en las aplicaciones Web, hay una recarga contínua de páginas cada vez que el usuario pulsa sobre un enlace. De esta forma se produce un tráfico muy alto entre el cliente y el servidor, llegado muchas veces, a recargar la misma página con un mínimo cambio.

Otra de las desventajas de las tradicionales aplicaciones Web es la poca capacidad multimedia que posee. Para ver un vídeo es necesario usar un programa externo para su reproducción.

Las capacidades multimedia son totales gracias a que estos entornos tienen reproductores internos y no hace falta ningún reproductor del Sistema Operativo del usuario.

Hay muchas herramientas para la creación de entornos RIA. Entre estas se puede mencionar las plataformas Adobe Flash, Adobe Flex y Adobe AIR de Adobe, uniPaaS de Magic Software, AJAX, OpenLaszlo, Silverlight de Microsoft, JavaFX Script de Sun Microsystems, Bindows de MB Technologies .

Arquitectura

una aplicación cliente “stateful” y una capa de servicios separada. RIA se apoya más sobre un desarrollo “cliente-servidor” en vez de un desarrollo web tradicional, en donde el estado se mantiene en el servidor en sesiones. El cliente sabe acerca de si mismo y el tipo de datos que esta solicitando y únicamente solicita los datos que necesita sin ninguna otra información.

Cliente
Se maneja la interacción entre el usuario y la “interfaz del usuario”, el usuario invoca comandos, actualiza vistas y carga datos. Aquí se mantiene el estado de la aplicación, se manejan todas las peticiones de datos hacia el servidor y se controla como se presentan los datos.

Servicios Aquí se manejan y se procesan todas las peticiones de la aplicación cliente y delega las acciones en el servidor, estas pueden ser guardar datos en la base de datos, actualizar los archivos del sistema, retornar datos al servidor, o algún tipo de proceso analítico. Determina y le da formato a los datos que son retornados al cliente

Aplicaciones

Consisten en el aprovechamiento de la experiencia del usuario en herramientas y funciones de escritorio tan naturales como copiar, cortar y pegar, redimensionar columnas, y ordenar etc., con el alcance y la flexibilidad de presentación y despliegue que ofrecen las aplicaciones o páginas Web junto con lo mejor de la multimedia (voz, vídeo, etc.).

Se puede decir que las RIA son la nueva generación de las aplicaciones y es una tendencia ya impuesta por empresas como Macromedia, Magic Software, Sun o Microsoft que se encuentran desarrollando recursos para hacer de este tipo de aplicaciones una realidad. Estas aplicaciones están basadas en plataformas J2EE o.NET, con un front-end Flash o Java swing y utilizan una arquitectura Cliente/Servidor asíncrona, segura y escalable, junto con una interfaz de usuario Web.

Entre los beneficios principales de aplicaciones RIA tenemos un mejoramiento importante en la experiencia visual, que hacen del uso de la aplicación algo muy sencillo, ofrece mejoras en la conectividad y despliegue instantáneo de la aplicación, agilizando su acceso, garantizan la desvinculación de la capa de presentación es decir acceso a la aplicación desde cualquier computador en cualquier lugar del mundo

Características clave

Accesibilidad: AJAX en nativo en los “navegadores web” y es el único “RIA framework” que puede ser encontrado por los diferentes motores de búsqueda. Aunque Adobe Flash ha dado grandes pasos en esta dirección

Comunicaciones avanzadas: con servidores que soporten nuevas tecnologías se puede mejorar la experiencia del usuario al utilizar protocolos de red optimizados y entradas y salidas asíncronas. Se requiere de una conexión de banda ancha confiable

Complejidad: soluciones avanzadas puede ser más difíciles de diseñar, desarrollar, implementar y depurar que las aplicaciones web tradicionales

Consistencia: la interfaz de usuario y las experiencias pueden ser controlada por el “OS”, el monitoreo del rendimiento y diagnostico de errores puede ser difícil

Instalación y mantenimiento: se requiere de la instalación de “plugin”, “virtual machine” o “sandbox”, que generalmente es más rápida que la instalación de una aplicación tradicional y esta no se puede automatizar. Las actualizaciones son automáticas

Offline: puede ser soportada reteniendo el estado en la maquina cliente

Seguridad: se mejora la seguridad por medio de actualizaciones automáticas y “sandbox”. Pero las extensiones por si mismas son sujetas a vulnerabilidades

Rendimiento: puede ser mejorado dependiendo de la aplicación y de las características de la red. Aplicaciones que pueden procesar localmente en el cliente evitan viajes hacia el servidor lo que incrementa su rendimiento. Dándole más trabajo al cliente también se puede incrementar el rendimiento del servidor. Por el contrario los recursos necesarios hacen difícil que las aplicaciones puedan ejecutarse en dispositivos pequeños, móviles o embebidos

Riqueza: añadiendo características que no son nativas en los “navegadores web” como captura de video

No hay comentarios:

Publicar un comentario