Les Progressive Web Apps (PWA) sont la dernière tendance en matière de développement d’applications mobiles. Utilisant les technologies web, les PWA sont des applications qui offrent aux utilisateurs une expérience semblable à celle d’une application native. Ces applications répondant à certaines exigences, sont déployées sur des serveurs, sont accessibles via des URL et sont indexées par les moteurs de recherche. Introduites par Google en 2015, ces nouvelles formes d’applications ont attiré l’attention de tous les géants du web.

Qu’est ce qu’une Progressive Web App ?

Les Progressive Web Apps (PWA) sont en fait des pages web ou des sites web classiques, mais qui peuvent apparaître à l’utilisateur comme des applications traditionnelles ou des applications mobiles natives. Ce type d’application tente de combiner les fonctionnalités offertes par la plupart des navigateurs modernes avec les avantages d’une expérience mobile.

Les Progressive Web Apps sont des expériences combinant le meilleur du web et le meilleur des applications. Elles ne requièrent qu’un navigateur web pour fonctionner et aucune installation n’est requise. Au fur et à mesure que l’utilisateur établit progressivement une relation avec l’application, elle devient de plus en plus puissante. Elle charge rapidement, même sur des réseaux très lents, envoie des notifications push pertinentes, possède une icône sur l’écran d’accueil et procure une expérience de haut niveau en plein écran.

Les Progressive Web Apps reposent sur des normes Web appelées Service Workers, Web App Manifests et HTTPS.

  • Service Workers permet aux développeurs de créer des sites web pouvant fonctionner lorsqu’il n’y a pas de réseau.
  • Web App Manifests permet aux utilisateurs de faire des choses comme épingler l’application à leurs écrans d’accueil, ou d’interagir avec des applications web comme ils le feraient avec des applications natives. Le but est de créer quelque chose qui fonctionnera quand il n’y a pas de connexion internet, et qui pourra être lancé directement à partir de l’écran d’accueil.
  • HTTPS permet de communiquer et de naviguer en toute sécurité sur un réseau informatique, notamment sur Internet.  Il s’agit d’une adaptation cryptée du procole HTTP habituel.

Caractéristiques d’une Progressive Web App

Pour porter le nom de Progressive Web App, une application web doit être progressive, c’est à dire fonctionner chez tous les utilisateurs, quel que soit le choix du navigateur. Pour ce faire, elle doit être construite avec une amélioration progressive en tant que principe de base.

L’application web doit être également réactive, c’est-à-dire s’adapter à tout facteur de forme, que ce soit un ordinateur de bureau, un téléphone portable, une tablette ou tout autre périphérique doté de connectivité à internet. Son fonctionnement doit cependant être indépendant de la connexion internet. Elle doit pouvoir fonctionner hors ligne ou sur des réseaux de faible qualité.

Une Progressive Web App doit avoir l’apparence d’une application native. Elle doit être toujours à jour et sûre, par l’utilisation de protocoles comme HTTPS pour empêcher la surveillance et s’assurer que le contenu n’a pas été altéré. Elle doit aussi être découvrable et identifiable comme une application grâce au manifeste W3C.

Une Progressive Web App doit faciliter le réengagement grâce à des fonctionnalités telles que les notifications push. Elle doit être aussi installable en permettant aux utilisateurs d’ajouter des applications qu’ils trouvent les plus utiles à leur écran d’accueil sans les tracas d’une appstore. Elle doit pouvoir être partagée facilement via une URL et ne doit pas nécessiter d’installation complexe.

Avantages des PWA pour les utilisateurs

Les applications mobiles peuvent occuper beaucoup d’espace de stockage sur le téléphone. Certains téléphones sont probablement pleins à craquer à cause du nombre d’applications qui y sont installées. Les Progressive Web Apps prennent beaucoup moins de place, en moyenne, et elles pourraient faire économiser une quantité importante de stockage et de bande passante.

L’utilisateur n’aura pas besoin de télécharger quoi que ce soit pour obtenir des fonctionnalités comme les notifications, les services de localisation, le support hors ligne, etc. Le navigateur mobile pourrait devenir le lien entre tout ce qu’il fait sur son téléphone. Tous les principaux fabricants de navigateurs mobiles sont en train d’intégrer un support pour les PWA sur leurs produits.

Avantages pour les développeurs

Maintenant, un développeur web peut facilement créer des applications mobiles. Tout ce qu’il a besoin c’est de savoir développer en HTML, CSS et JavaScript. Il n’a plus besoin de passer par la douleur de l’apprentissage des langues natives comme Java (pour les applications Android) ou Objective-C et Swift (pour iOS Apps).

Les développeurs pourront désormais publier leurs applications sans avoir à se plier aux règles et aux restrictions placées par Play Store et App Store! Tout développeur d’applications mobiles a déjà rencontré des problèmes en suivant les normes de l’App Store. L’App Store a également des règles très strictes quant à la date à laquelle le développeur peut mettre à jour son application ou ce que cette mise à jour peut contenir. App Store ne permet pas de publier une mise à jour si elle modifie le fonctionnement fondamental de l’application.

Autrefois, les développeurs devaient construire une application pour chaque plateforme. Lorsque quelqu’un avait une idée, il devait l’adapter à Androïd, puis à iOS ou vice versa. Cela nécessitait un double travail. C’était la même chose pour les mises à jour. Désormais, ce travail d’adaptation n’est plus nécessaire les Progressive Web Apps s’appuient sur les navigateurs web. Elles peuvent donc fonctionner quelle que soient la plateforme. De plus, les développeurs n’ont plus besoin de l’autorisation des magasins d’applications pour mettre à jour leur logiciel.

De par leur simplicité et les nombreux avantages qu’elles offrent aussi bien aux développeurs qu’aux utilisateurs, les Progressive Web Apps seront sans aucun doute dans un futur proche la référence en matière d’applications mobiles. Bientôt, fini les téléphones qui rament à cause d’une faible mémoire. Elles mettent le développement d’application à la portée de tous, ce qui conduira à un enrichissement considérable de l’expérience mobile. Les applications natives ne vont pas bientôt disparaître, mais force est de reconnaître que leurs jours sont comptés. Il y a, en effet, des signes qui ne trompent pas : Microsoft s’est déjà engagé à financer le projet de Google et Apple travaille d’arrache-pied pour que ces téléphones soient compatibles avec cette norme qui est en passe de supplanter toutes les autres.