Una aplicación de Internet enriquecida (también conocida como aplicación web enriquecida , [1] RIA o aplicación de Internet instalable ) es una aplicación web que tiene muchas de las características del software de aplicación de escritorio . El concepto está estrechamente relacionado con una aplicación de una sola página , y puede permitir al usuario funciones interactivas como arrastrar y soltar , menú de fondo, edición WYSIWYG , etc. El concepto fue introducido por primera vez en 2002 por Macromedia para describir el producto Macromedia Flash MX (que más tarde se convirtió en Adobe Flash ). [2] A lo largo de la década de 2000, el término se generalizó para describir aplicaciones basadas en navegador desarrolladas con otras tecnologías de complementos de navegador de la competencia, incluidos los applets de Java y Microsoft Silverlight .
Con la desuso de las interfaces de complementos del navegador y la transición a las tecnologías HTML5 estándar , las aplicaciones de Internet enriquecidas fueron reemplazadas por aplicaciones web JavaScript , incluidas aplicaciones de página única y aplicaciones web progresivas .
Los términos "Rich Internet Application" y "rich client" fueron introducidos en un informe técnico de marzo de 2002 por Macromedia (ahora Adobe ), [2] aunque el concepto ya existía desde hacía algunos años bajo nombres como: " Remote Scripting " por Microsoft en abril de 1999 [3] y "X Internet" por Forrester Research en octubre de 2000. [4]
En noviembre de 2011, hubo una serie de anuncios que demostraban una disminución en la demanda de arquitecturas de aplicaciones de Internet enriquecidas basadas en complementos de navegador para favorecer alternativas HTML5 . Adobe anunció que Flash ya no se produciría para dispositivos móviles [5] o TV [6] (reorientando sus esfuerzos hacia Adobe AIR ). Los expertos cuestionaron su continua relevancia incluso en el escritorio [7] y lo describieron como "el principio del fin". [8] Research In Motion (RIM) anunció que continuaría desarrollando Flash para PlayBook , una decisión cuestionada por algunos comentaristas. [9] Los rumores afirmaban que Microsoft abandonaría Silverlight después del próximo lanzamiento de la versión 5, lo que más tarde resultaría ser el caso. [10] [11] La combinación de estos anuncios hizo que algunos lo proclamaran "el fin de la línea para los complementos de navegador". [12]
Una aplicación móvil enriquecida (RMA) es una aplicación móvil que hereda numerosas propiedades de las aplicaciones web y presenta varias propiedades explícitas, como el conocimiento del contexto y la ubicuidad. [13] [14] [2] Las RMA son "aplicaciones móviles en línea, de múltiples niveles y energéticamente eficientes que se originaron a partir de la convergencia de la computación en la nube móvil , la web futura y las tecnologías de comunicación inminentes que prevén brindar una experiencia de usuario enriquecida a través de una alta funcionalidad, interacción inmersiva y respuesta nítida en un entorno inalámbrico seguro al tiempo que permiten el conocimiento del contexto, la usabilidad fuera de línea, la portabilidad y la ubicuidad de los datos". [15]
Tras la exitosa implementación de aplicaciones web en computadoras de escritorio y la creciente popularidad de los dispositivos móviles, los investigadores llevaron estas funcionalidades mejoradas de las aplicaciones web a la plataforma de los teléfonos inteligentes. NTT DoCoMo de Japón adoptó Adobe Flash Lite en 2003 para mejorar la funcionalidad de las aplicaciones móviles. En 2008, Google llevó Google Gears a los dispositivos Windows Mobile 5 y 6 para admitir aplicaciones móviles independientes de la plataforma en modo sin conexión. Google Gears para dispositivos móviles es una extensión del navegador móvil para desarrollar aplicaciones web enriquecidas por un complemento independiente que el usuario puede instalar. Estas aplicaciones se pueden ejecutar dentro del dispositivo móvil con un navegador web independientemente de la arquitectura, el sistema operativo y la tecnología. En abril de 2008, Microsoft presentó Microsoft Silverlight mobile para desarrollar interfaces de usuario atractivas e interactivas para dispositivos móviles. Silverlight es un complemento .NET compatible con varios navegadores móviles que ejecuta las aplicaciones móviles compatibles con Silverlight. Android acomodó el complemento Google Gear en el navegador Google Chrome Lite para mejorar la experiencia de interacción de los usuarios finales de Android.
Adobe Flash manipula gráficos vectoriales y rasterizados para proporcionar animación de texto, dibujos e imágenes fijas. Admite transmisión bidireccional de audio y video, y puede capturar la entrada del usuario a través del mouse, teclado, micrófono y cámara. Flash contiene un lenguaje orientado a objetos llamado ActionScript y admite la automatización a través del lenguaje JavaScript Flash (JSFL). El contenido Flash se puede mostrar en varios sistemas informáticos y dispositivos , utilizando Adobe Flash Player , que está disponible de forma gratuita para navegadores web comunes, algunos teléfonos móviles y algunos otros dispositivos electrónicos (utilizando Flash Lite ). [16]
Apache Flex, anteriormente Adobe Flex, es un kit de desarrollo de software (SDK) para el desarrollo y la implementación de RIA multiplataforma basadas en la plataforma Adobe Flash . Inicialmente desarrollado por Macromedia y luego adquirido por Adobe Systems , Flex fue donado por Adobe a la Apache Software Foundation en 2011.
Los applets de Java se utilizaban para crear visualizaciones interactivas y presentar vídeos, objetos tridimensionales y otros medios. Los applets de Java eran apropiados para visualizaciones complejas que requerían un esfuerzo de programación significativo en un lenguaje de alto nivel o comunicaciones entre el applet y el servidor de origen.
JavaFX es una plataforma de software para crear y distribuir aplicaciones RIA que pueden ejecutarse en una amplia variedad de dispositivos conectados. La versión actual (JavaFX 12, 11 de marzo de 2019) permite crear aplicaciones para computadoras de escritorio, navegadores y teléfonos móviles y viene con soporte 3D. Se planea su uso en decodificadores de TV, consolas de juegos, reproductores de Blu-ray y otras plataformas. Java FX se ejecuta como un complemento de Java o a través de Webstart . [17]
Silverlight fue propuesta por Microsoft como otra alternativa propietaria. La tecnología no ha sido ampliamente aceptada y, por ejemplo, carece de soporte en muchos dispositivos móviles. Algunos ejemplos de aplicación fueron la transmisión de video para eventos como los Juegos Olímpicos de Verano de 2008 en Beijing, [18] los Juegos Olímpicos de Invierno de 2010 en Vancouver, [19] y las convenciones de 2008 de los dos principales partidos políticos en los Estados Unidos. [20] Silverlight también fue utilizado por Netflix para su servicio de transmisión de video instantáneo. [21] Silverlight ya no está en desarrollo activo y no es compatible con Microsoft Edge , el navegador más reciente de Microsoft.
Gears , anteriormente conocido como Google Gears , es un software de utilidad discontinuado que proporciona almacenamiento sin conexión y otras funciones adicionales a los navegadores web, incluido Google Chrome . Gears se discontinuó a favor de los métodos estandarizados HTML5 . Gears se eliminó de Google Chrome 12. [22]
Las RIA podrían utilizar XForms para mejorar su funcionalidad. [ cita requerida ] [ investigación original? ] El uso de XML y XSLT [23] junto con algo de XHTML , CSS y JavaScript también se puede utilizar para generar componentes de interfaz de usuario del lado del cliente más completos, como tablas de datos que se pueden ordenar localmente en el cliente sin tener que volver al servidor. Los navegadores Mozilla e Internet Explorer admiten esto.
Las RIA presentan desafíos de indexación para los motores de búsqueda web , pero el contenido de Adobe Flash ahora es al menos parcialmente indexable. [24]
La seguridad puede mejorar con respecto a la del software de aplicación (por ejemplo, mediante el uso de entornos protegidos y actualizaciones automáticas), pero las propias extensiones siguen estando sujetas a vulnerabilidades y el acceso suele ser mucho mayor que el de las aplicaciones web nativas . Por motivos de seguridad, la mayoría de las RIA ejecutan sus partes cliente dentro de un área especial aislada del escritorio del cliente denominada entorno protegido. El entorno protegido limita la visibilidad y el acceso al sistema de archivos y al sistema operativo del cliente al servidor de aplicaciones del otro lado de la conexión. Este enfoque permite que el sistema cliente gestione actividades locales, reformateo, etc., reduciendo así la cantidad y la frecuencia del tráfico cliente-servidor, especialmente en comparación con las implementaciones cliente-servidor creadas en torno a los denominados clientes ligeros. [25]