PWA - Une courte introduction
par Philippe Randour — publié le 22 octobre 2018
Cet article a été publié préalablement sur le site de Brome Conseil.
Depuis un certain temps, on entend beaucoup parler des Progressive Web Apps (PWA), ou encore Applications Web Progressives en français. Alors, au-delà de l’effet de mode, qu’est-ce que c’est vraiment ? Quels en sont les avantages ? Qui peut en bénéficier ?
Avant toute chose, pourquoi est-ce devenu une technologie à la mode ? La réponse est fort simple : parce que les éléments essentiels à leur mise en oeuvre sont maintenant disponibles et supportés par les navigateurs les plus répandus sur le marché.
Qu’est-ce qu’une Progressive Web App ?
Une PWA, c’est d’abord une application ou un site web mais qui offre en outre des fonctionnalités qui lui permettent d’apparaître à l’utilisateur comme une application native. Ce concept n’est pas lié spécifiquement aux périphériques mobiles, mais il faut bien se rendre compte que c’est là qu’il prend tout son sens.
Elle repose sur les technologies web traditionnelles mais en tirant partie des dernières fonctionnalités des navigateurs modernes. Cela rend les applications plus performantes et sur un pied d’égalité avec les applications natives. Tout cela est possible grâce à l’accès direct aux capacités des appareils mobiles (GPS, appareil photo, …).
Quelles en sont les caractéristiques essentielles ?
Pour vraiment être considérée comme PWA, une application web doit répondre à certains critères. Elle doit être :
- Indexable par les moteurs de recherche, de la même manière qu’un site web classique.
- Partageable par simple envoi d’une URL.
- Indépendante de toute connexion réseau, ce qui lui permet de fonctionner en mode déconnecté ou dans des zones de faible réception.
- Installable, ce qui permet l’ajout d’un raccourci directement sur l’écran d’accueil du périphérique mobile.
- Progressive, ce qui induit qu’elle peut fonctionner sur tout type de périphérique et n’active certaines fonctionnalités qu’en fonction de leur disponibilité.
- Responsive, c’est-à-dire utilisable sur tout type d’appareil disposant d’un écran et d’un navigateur, quelle qu’en soit la taille.
- Sécurisée, c’est à dire que les échanges de données entre l’application et les sites passent exclusivement par des connexions sécurisées.
- Attractive, notamment par l’envoi de notifications lorsque du nouveau contenu est disponible ; mais aussi par un mode de fonctionnement en plein écran (sans cadre de navigateur).
Quels en sont les avantages ?
Au rayon des avantages, on distingue :
- Une installation rapide.
- Un temps de chargement très court.
- Un système de cache pour préserver la bande passante.
- Une indépendance par rapport aux App Store.
- Des mises à jour transparentes pour l’utilisateur, sans nécessiter de téléchargement complet de l’application. On met à jour uniquement les parties modifiées.
- Une interface utilisateur et des fonctionnalités similaires aux applications natives.
- Une réduction des coûts de développement. Un seul développement est nécessaire pour toutes les plateformes, par les mêmes équipes de développement et au moyen de technologies déjà maîtrisées.
Qui peut en tirer parti ?
Au vu des avantages notamment en terme de coût, mais aussi d’indépendance vis-à-vis des plateformes de distribution, il est clair que toute société qui produit des applications mobiles devrait s’y intéresser.
Mais au-delà de ça, le marché visé par une entreprise peut être un excellent incitatif si la base d’utilisateurs se trouve dans des zones de connexion défavorables. C’est ce qui a notamment incité Twitter à proposer une version Lite de son application, pour répondre à un besoin dans certaines régions.
En conclusion
Je vous invite à lire l’excellent article de Fred Cavazza (Pourquoi les Progressive Web Apps sont la seule alternative viable aux applications natives), lequel a déjà abordé le sujet à de nombreuses reprises.
À noter, pour les utilisateurs de WordPress : il existe de nombreuses extensions orientées PWA. Il y a aussi actuellement un effort conjoint de la part de Google, XWP et Automattic dans la réalisation d’une extension permettant d’adjoindre les fonctionnalités de PWA à ce puissant CMS. Avec pour objectif de les intégrer à terme directement dans le coeur du système. À suivre donc…