Articles

Aplicación web

Posted on

Esta sección necesita citas adicionales para su verificación. Por favor, ayude a mejorar este artículo añadiendo citas a fuentes fiables. El material sin fuente puede ser cuestionado y eliminado. (Febrero de 2018) (Aprende cómo y cuándo eliminar este mensaje de la plantilla)

En modelos informáticos anteriores como el cliente-servidor, la carga de procesamiento de la aplicación se repartía entre el código del servidor y el código instalado en cada cliente de forma local. En otras palabras, una aplicación tenía su propio programa cliente precompilado que servía como su interfaz de usuario y tenía que ser instalado por separado en el ordenador personal de cada usuario. Una actualización del código del lado del servidor de la aplicación solía requerir también una actualización del código del lado del cliente instalado en cada estación de trabajo de los usuarios, lo que aumentaba el coste de soporte y disminuía la productividad. Además, tanto los componentes del cliente como del servidor de la aplicación solían estar estrechamente ligados a una arquitectura informática y a un sistema operativo concretos, y portarlos a otros solía ser prohibitivo para todas las aplicaciones, salvo las más grandes. (Hoy en día, las aplicaciones nativas para dispositivos móviles también se ven perjudicadas por algunos o todos los problemas anteriores).

En cambio, las aplicaciones web utilizan documentos web escritos en un formato estándar como HTML y JavaScript, que son compatibles con una gran variedad de navegadores web. Las aplicaciones web pueden considerarse como una variante específica del software cliente-servidor en la que el software cliente se descarga en la máquina cliente cuando se visita la página web correspondiente, utilizando procedimientos estándar como HTTP. Las actualizaciones del software web cliente pueden producirse cada vez que se visita la página web. Durante la sesión, el navegador web interpreta y muestra las páginas, y actúa como cliente universal para cualquier aplicación web.

En los primeros días de la web, cada página web individual se entregaba al cliente como un documento estático, pero la secuencia de páginas todavía podía proporcionar una experiencia interactiva, ya que la entrada del usuario se devolvía a través de elementos de formulario web incrustados en el marcado de la página. Sin embargo, cada cambio significativo en la página web requería un viaje de ida y vuelta al servidor para actualizar toda la página.

En 1995, Netscape introdujo un lenguaje de scripting del lado del cliente llamado JavaScript que permitía a los programadores añadir algunos elementos dinámicos a la interfaz de usuario que se ejecutaba en el lado del cliente. Así, en lugar de enviar datos al servidor para generar una página web completa, los scripts incrustados de la página descargada pueden realizar diversas tareas como la validación de entradas o mostrar/ocultar partes de la página.

En 1996, Macromedia introdujo Flash, un reproductor de animaciones vectoriales que podía añadirse a los navegadores como complemento para incrustar animaciones en las páginas web. Permitió el uso de un lenguaje de scripting para programar interacciones en el lado del cliente sin necesidad de comunicarse con el servidor.

En 1999, el concepto de «aplicación web» se introdujo en el lenguaje Java en la versión 2.2 de la especificación Servlet. En ese momento ya se habían desarrollado tanto JavaScript como XML, pero todavía no se había acuñado el término Ajax y el objeto XMLHttpRequest se había introducido recientemente en Internet Explorer 5 como un objeto ActiveX.

En 2005 se acuñó el término Ajax y aplicaciones como Gmail empezaron a hacer sus lados cliente cada vez más interactivos. Un script de página web es capaz de contactar con el servidor para almacenar/recuperar datos sin necesidad de descargar una página web completa.

En 2007, Steve Jobs anunció que las aplicaciones web, desarrolladas en HTML5 utilizando la arquitectura AJAX, serían el formato estándar para las aplicaciones del iPhone. No era necesario ningún kit de desarrollo de software (SDK) y las apps estarían totalmente integradas en el dispositivo a través del motor del navegador Safari. Este modelo se cambió posteriormente por el de la App Store, como forma de evitar a los jailbreakers y de apaciguar a los desarrolladores frustrados.

En 2014 se ultimó HTML5, que proporciona capacidades gráficas y multimedia sin necesidad de plugins del lado del cliente. HTML5 también enriqueció el contenido semántico de los documentos. Las API y el modelo de objetos del documento (DOM) ya no son ideas de última hora, sino que son partes fundamentales de la especificación de HTML5. La API WebGL abrió el camino a los gráficos 3D avanzados basados en el lienzo de HTML5 y el lenguaje JavaScript. Estos tienen una importancia significativa en la creación de aplicaciones web ricas verdaderamente independientes de la plataforma y el navegador.

En 2016, durante la conferencia anual de Google IO, Eric Bidelman (Ingeniero Senior de Programas de Desarrolladores de Personal) presentó las Aplicaciones Web Progresivas (PWA) como un nuevo estándar en el desarrollo web. Jeff Burtoft, Principal Program Manager de Microsoft, dijo que «Google lideró el camino con las Progressive Web Apps, y después de un largo proceso, decidimos que teníamos que apoyarlo completamente.» Así, tanto Microsoft como Google apoyaron el estándar PWA.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *