¿Qué es una PWA o «progressive web app»?

Una PWA o progressive web app (en español: aplicación web progresiva) es un aplicación web (Web APP) o un Sitio Web que se ve y se comporta como si fuera una aplicación móvil nativa, lo que comúnmente conocemos como “APP”. Las PWA están diseñadas para aprovechar las características nativas de los dispositivos móviles, (hardware y software), pero no requieren que el usuario final deba visitar una tienda de aplicaciones como el “APP Store” de Apple o el “Play Store” de Google para realizar la compra y/o descargar del software (APP) localmente en el dispositivo. En cambio, un PWA se puede “encontrar” con una simple búsqueda en Google y se puede acceder a ella de inmediato a través del navegador desde el que la encontramos. Ya hay muchos sitios y servicios web que las utilizan, como es el caso de Google Drive o nuestra web de RDesign.

Las PWA eliminan la necesidad de desarrollar aplicaciones nativas (APPs) para múltiples plataformas tales como Android, iOS, o Windows Phone. Al igual que los videos de YouTube, el contenido de PWA se descarga progresivamente desde un servidor web, lo que brinda al usuario final una mejor experiencia de usuario, incluso que la de un sitio web tradicional, pues maneja de manera más eficiente el cache el dispositivo. El término «aplicaciones web progresivas» fue acuñado en 2015 por el diseñador Frances Berriman y el ingeniero de Google Chrome, Alex Russell.

Uno de los principales objetivos de las PWA es minimizar o, progresivamente borrar, la brecha entre las aplicaciones nativas “APPs” tradicionales y las aplicaciones web móviles, al incorporar la mayoría de los beneficios de ellas en un navegador. Las PWA usan tecnologías basadas en estándares y se ejecutan en un contenedor que es seguro (HTTPS) y accesible para cualquier persona en la web. Pueden enviar notificaciones push (Pussh notifications) al usuario, trabajar sin conexión y ser accesibles desde la pantalla de inicio, al igual que una aplicación móvil nativa de una tienda de aplicaciones.

Las PWA también pueden aprovechar las APIs y los complementos del navegador para garantizar que la implementación y el mantenimiento de un sitio web sigan siendo escalables y mantinibles. Otro beneficio que las PWA han heredado de los sitios web tradicionales es el uso de URI para indicar el estado actual. Esto permite que la aplicación web retenga o vuelva a cargar su estado cuando el usuario marque o comparta la URL de la aplicación.

La interfaz de usuario de una aplicación web progresiva se adapta a la resolución y el tamaño de pantalla del dispositivo anfitrión tal como lo hacen las APPs nativas, además, debería verse como una sin que el usuario notase la diferencia. Una PWA no requiere de nuevas descargas, parches, o actualizaciones constantes como una APP nativa, ya que la misma se encuentra en un servidor o nube (tal vez el termino le resulte más familiar), y solo requerirá de que se refresque o actualice el chaché en su navegador. Esto supone una gran ventaja en cuanto a recursos, fundamentalmente en el uso de la memoria del dispositivo. Además una PWA puede funcionar en áreas de baja conectividad o incluso sin acceso a internet. Debido a que las solicitudes de red tradicionales “HTTP” se pueden interceptar, las PWA emplean el protocolo HTTPS mediante la instalación de certificados SSL, lo que comúnmente se conoce como “sitios seguros”.

Las PWA seguramente son el futuro de las APPs, pero solo el tiempo nos lo dirá.

Espero que ahora tengas una idea un poco más clara de lo que es realmente una PWA y su potencial. En próximos artículos hablaremos más sobre ellas.