Aplicación de Internet enriquecida

Una aplicación de Internet enriquecida (RIA) o una aplicación de Internet enriquecida es una aplicación web que proporciona características similares al software tradicional instalado en una computadora . La dimensión interactiva y la velocidad de ejecución se cuidan especialmente en estas aplicaciones web.

Un RIA puede ser:

El término aplicación de Internet enriquecida se introdujo en una publicación de Macromedia enMarzo de 2002.

Páginas HTML con ricas interfaces interactivas

Las aplicaciones web tradicionales a menudo se basan en una arquitectura que utiliza clientes ligeros  : el procesamiento se realiza en el servidor (remoto), el cliente (local) solo hace una presentación (ejemplo: HTML ). El cliente envía sus datos al servidor, este último realiza el (los) procesamiento (es) y luego se devuelve una página de respuesta al cliente. Por lo tanto, se llama al servidor para cada interacción, excepto en algunos casos específicos, como la entrada en un formulario.

Los RIA se esfuerzan por repatriar al cliente (local) parte del procesamiento normalmente asignado al servidor. El lenguaje JavaScript , en particular, fue diseñado con esto en mente. Por ejemplo, le permite indicar mientras escribe la cantidad de caracteres que aún es posible ingresar, en un campo de texto de tamaño limitado, en lugar de aceptar todo y luego solo enviarle un mensaje de vuelta. 'Error del servidor con pérdida de parte del contenido del hit.

Los estándares de Internet han evolucionado lenta y continuamente a lo largo del tiempo para adaptarse a estas técnicas. Por lo tanto, es difícil definir claramente qué constituye un ARI y qué no. Normalmente, lo que se puede hacer con un RIA está limitado por las capacidades del sistema cliente.

Debido a que los RIA usan recursos del sistema cliente, brindan a las aplicaciones web capacidades de interfaz de usuario receptivas que no serían posibles con etiquetas HTML estándar.

Muchas funciones pueden ser deportadas al cliente, incluyendo arrastrar y soltar, el uso de barras de herramientas para modificar datos, cálculos (por ejemplo: tasa de interés para un préstamo), datos que no necesariamente tienen que ser enviados de regreso al servidor.

El desarrollo de HTML5 a veces se anuncia como condenado a reemplazar estos RIA, en realidad probablemente solo admitirá los usos y funciones más utilizados y extendidos de los principales RIA, a los que el aspecto propietario da una ventaja a un consorcio como el W3C. .

Ventajas y desventajas

Aunque el desarrollo de aplicaciones que se ejecutan en un navegador web limita su alcance, aunque es una tarea difícil de implementar, y aunque se agrega un grado adicional de complejidad para desarrollar aplicaciones equivalentes a las aplicaciones de ofimática convencional, estos esfuerzos suelen verse recompensados ​​porque:

Este último punto es cierto en general, incluso si esta alternativa es lenta o simplificada. Un buen ejemplo de este fenómeno es el uso del correo web .

Tecnologías del lado del cliente

El cliente es un navegador compatible con Javascript, CSS y capaz de utilizar las funcionalidades del sistema operativo mediante la gestión de complementos (motor multimedia / 3D Quicktime , Windows Media , Unity , RealPlayer , Shockwave ). Esta compatibilidad con Javascript permite el uso de "applets".

Secuencias de comandos del lado del cliente

JavaScript y Ajax

Javascript fue el primer lenguaje importante del lado del cliente. Fue capaz de ejecutar código del lado del cliente, además de que se implementó en la mayoría de los clientes web .

Aunque su uso es relativamente limitado a primera vista, combinado con varias capas de otros lenguajes (es decir, DHTML ) ha sido posible hacerlo coexistir con un sistema RIA sin utilizar una solución del tipo “cliente monolítico”. AJAX es ahora el término que se utiliza para referirse a esta combinación de técnicas, recientemente se ha convertido en la más importante gracias en particular a proyectos de Google como Gmail o google maps . Sin embargo, la creación de aplicaciones ricas con esta plataforma de desarrollo está resultando muy difícil, ya que las diferentes tecnologías deben interactuar para que todo funcione, y la compatibilidad del navegador requiere mucho esfuerzo.

Muchos editores ofrecen herramientas y marcos para simplificar la redacción de dichas aplicaciones. El número de frameworks javascript es superior a 500 . Los más famosos son:

Tenga en cuenta que si javascript se ha mantenido durante mucho tiempo como una tecnología del lado del cliente, los nuevos marcos ahora lo han llevado al lado del servidor. El ejemplo más conocido es el de NodeJS .

Subprograma de máquina virtual

Subprogramas de Java

Los subprogramas de las aplicaciones Java se compilan en bytecode , descargados de un servidor que ejecuta el lado del cliente en una plataforma con una máquina virtual Java ( Java Runtime Engine ). Los applets , diminutivos de aplicaciones que se ejecutan en un navegador sin acceso a dispositivos del sistema operativo (impresora, GPS) y con derechos restringidos de ejecución. Estas limitaciones desaparecen al utilizar la tecnología Java Web Start, que permite instalar una aplicación desde la web que se ejecutará en una máquina virtual Java fuera de un navegador. El eslogan escribir una vez y ejecutar en todas partes asociado con Java trajo el problema de la portabilidad a las máquinas virtuales y planteó el problema de la interoperabilidad de los protocolos. Históricamente, estos applets están en el origen del desarrollo de un marco real que se ejecuta en diferentes dispositivos móviles Java OS y J2ME con para teléfonos la plataforma MIDP utilizada por Blackberries . Los applets han dado paso a la tecnología Flash, cuyo motor de ejecución es liviano (2  Mio frente a 50  Mio ), el tiempo de carga es más rápido, y donde los gráficos se animan más fácilmente gracias a una programación más temporal que evento.

Adobe Flash

Adobe Systems (que compróMacromedia afinales de 2005) es uno de los proveedores en este campo contecnología Adobe Flashque integra servidores de comunicación basados ​​enFlash,Central, Breeze yFlex.

Laszlo es una plataforma de código abierto para aplicaciones de Internet enriquecidas, desarrollada originalmente por Laszlo Systems, que también produce archivos SWF que se ejecutan en Adobe Flash Player.

Cada una de estas tecnologías se ejecuta en los navegadores de los visitantes del sitio a través de Adobe Flash Player, que está instalado en el 98% de los navegadores de Internet.

Flash se eliminó gradualmente durante la década de 2010, y Adobe anunció el fin definitivo del soporte para 2020.

Silverlight

Creado por Microsoft e integrando el marco .Net

Marco de RIA

Entornos de código abierto que reutilizan una o más de las siguientes tecnologías:

El primer marco que ofrece estas características fue el marco de eco . podemos citar :

Algunas aplicaciones ricas de Internet

Cliente basado en XML (datos, interfaz)

Aplicación iniciada desde un navegador (RDA)

Las aplicaciones se descargan de un navegador en el sistema operativo y se ejecutan fuera del navegador, a diferencia de un subprograma web que se ejecuta en el navegador. Además, el software siempre carga las versiones más recientes de las aplicaciones, evitando así complejos procedimientos de instalación o actualización. Este enfoque le permite crear aplicaciones enriquecidas sin las limitaciones de HTML y sin las limitaciones específicas de diferentes navegadores. Esta técnica también permite realizar desarrollos a menor costo en comparación con el desarrollo web.

Aplicaciones Java / Java Web Start

Tiempo de ejecución integrado de Adobe

Microsoft ClickOnce

Enfoque al cliente ultraligero

El enfoque de cliente ultraligero proporciona al desarrollador una biblioteca de Java que permite el desarrollo de aplicaciones de Internet enriquecidas completamente basadas en Java.

La arquitectura propuesta, totalmente abierta, se basa en el protocolo de medio objeto (HOP) que permite, a través de un conjunto de interfaces de programación (API), mover datos al servidor Web y no transferir en la estación de trabajo cliente solo los datos disponibles visualmente. al usuario.

Solo el motor de presentación se ejecuta en el lado del cliente, lo que reduce aún más el tamaño de los módulos que deben descargarse del servidor. Esto permite al usuario acceder a los datos de su empresa desde diferentes terminales como su computadora de escritorio, portátil o teléfono inteligente .

Por tanto, permite aprovechar tanto las ventajas de la plataforma cliente Java como las ventajas de la plataforma Java Server.

Referencia

  1. (in) Penetración de la versión de Adobe Flash Player
  2. "  Adobe anuncia la muerte de Flash para 2020  " , en ZdNet .

Ver también

Artículos relacionados

enlaces externos