Expertos en Drupal

Aplicaciones web progresivas e implementación en Drupal 9

Internet se construyó por primera vez con el propósito de mejorar la comunicación para los militares y los científicos durante la década de 1960. Pronto, la Web se transformó en un fenómeno revolucionario alrededor de la década de 1990 y ha sido imparable desde entonces. Aunque el propósito de la web siguió cambiando, uno de los propósitos que permaneció constante fue la conveniencia.

drauta
Jaume Codina
Jaume Codina

Diciembre 11, 2020

La necesidad de comodidad generó muchas formas innovadoras de acceder a Internet. Las aplicaciones móviles nativas y las aplicaciones web son dos de esas tecnologías que han hecho que la navegación por Internet sea fácil y conveniente. En este artículo, hablaremos sobre las aplicaciones web progresivas y cómo puede implementarlas con Drupal utilizando el módulo de aplicaciones web progresivas de Drupal. Pero antes de profundizar en todo eso, veamos las características de las aplicaciones nativas y web y cómo las aplicaciones web progresivas llenan los vacíos.

Características de las aplicaciones móviles nativas

  • Son aplicaciones específicas de la plataforma. Esto también significa que deben reconstruirse para cada nueva plataforma (iOS, Android).
  • Necesitan ser descargadas.
  • Generalmente super rápidas.
  • Ricas en características y funcionalidades.
  • Pueden integrarse a la perfección en cualquier dispositivo y sentirse parte de él.
  • Pueden trabajar sin conexión.
  • Pueden acceder fácilmente a los datos del dispositivo, al hardware del dispositivo y al sistema de archivos local.
  • Más caras de desarrollar, mantener y actualizar.
  • Están preaprobadas por motivos de seguridad y se pueden descargar en las tiendas de aplicaciones.
  • Difíciles de rastrear para los motores de búsqueda.

Características de las aplicaciones web

  • No dependen de la plataforma. Todo lo que necesitan es un navegador para acceder a ellas. Son compatibles con la mayoría de los navegadores modernos. No es necesario descargarlas.
  • No hay un SDK en particular para desarrollarlas. El frontend se desarrolla utilizando HTML, CSS, JavaScript y una LAMP o una pila MEAN para el backend.
  • No es necesario actualizarlas. Menores costos de desarrollo y mantenimiento.
  • Aunque necesitan autenticación, la seguridad es un problema porque pueden ser vulnerables al acceso no autorizado.
  • No funcionan sin conexión y pueden ser más lentas que las aplicaciones móviles nativas.
  • No aparecen en las tiendas de aplicaciones, por lo que descubrirlas puede ser más difícil.

¿Qué son las aplicaciones web progresivas y cómo llenan el vacío?
En resumen, las aplicaciones web nativas son altamente capaces pero carecen de alcance. Mientras que las aplicaciones web tienen un alcance más amplio pero carecen de capacidades. Y ahí es donde entran en juego las aplicaciones web progresivas para cerrar las brechas.

Progressive Web Apps es una combinación ideal de los beneficios de las aplicaciones nativas y las aplicaciones web. Usando capacidades web modernas, las aplicaciones web progresivas (PWA) pueden ofrecer experiencias similares a las de una aplicación a los usuarios. Combina las funciones que ofrecen la mayoría de los navegadores modernos con los beneficios de las experiencias móviles. Se pueden crear aplicaciones similares a aplicaciones nativas, extremadamente complejas e instalables. Ahora que Web Assembly es compatible con la mayoría de los navegadores, los PWA se pueden crear en los idiomas que elija el desarrollador, lo que aumenta ampliamente el alcance y la flexibilidad de las funcionalidades que pueden ofrecer.

Características de las aplicaciones web progresivas

  • Son independientes de la plataforma y el dispositivo. Funcionan maravillosamente en cualquier navegador.
  • Se cargan rápido y son extremadamente confiables (incluso con una velocidad de Internet baja). El desplazamiento es muy suave y fluido.
  • También pueden trabajar sin conexión.
  • Se pueden habilitar notificaciones push nativas similares a aplicaciones.
  • Pueden acceder al hardware y a los datos del dispositivo como aplicaciones nativas.
  • Se pueden agregar accesos directos en la pantalla de inicio del usuario (en lugar de descargarlos)
  • Sin necesidad de instalaciones complejas. Pueden compartir las URL fácilmente.
  • Responsive en todos los dispositivos.
  • Son más fáciles y rápidas de desarrollar. El mantenimiento también es sencillo.

Antes de hablar sobre el módulo PWA en Drupal, veamos los requisitos mínimos para crear una PWA:

  • Debe ejecutarse sobre HTTPS.
  • Debe incluir un trabajador de servicio: el Service Worker es un script (javascript) que se ejecuta sobre https en el navegador y proporciona acceso al navegador. Proporciona funciones nativas similares a aplicaciones, como entrega de contenido sin conexión, notificaciones push, etc.
  • Debe tener un manifiesto de aplicación web, que es un archivo JSON que contiene metadatos con información sobre la aplicación web, como el nombre, la descripción, el autor y más. Esto también es útil para la optimización de motores de búsqueda.

El módulo PWA Drupal: cómo crear aplicaciones web progresivas con Drupal 9 (y 8)
El módulo Drupal PWA es fácil de instalar y viene con Service Worker (para almacenamiento en caché y otras capacidades similares a aplicaciones sin conexión) y Manifest.js que podemos configurar. Sin embargo, debemos asegurarnos de tener SSL instalado antes de comenzar con el proceso de instalación de PWA. Si nuestro requisito es extremadamente específico con toneladas de personalizaciones, podemos desarrollar la PWA utilizando marcos frontales como Angular o React y personalizar nuestro propio Service Worker.

Comparte este artículo

Artículos Relacionados