Progressive Web App : Qu’est-ce que c’est ?
Une Progressive Web App (PWA, application web progressive en français) est une application web qui consiste en des pages ou des sites web, et qui peuvent apparaître à l'utilisateur de la même manière que les applications natives ou les applications mobiles.
Pensez-y comme un site Web construit à l'aide de technologies Web, mais qui agit et se sent comme une application sans les contraintes de cette dernière (soumission aux App-Stores, utilisation importante de la mémoire de l'appareil…), plus besoin de faire des développements spécifiques pour les applications en fonction de chacune des plateformes : iOS, Android…
Pourquoi utiliser une PWA ?
- Une seule application PWA
Grâce à cette technologie, une seule et même application est développée pour fonctionner sur toutes les plateformes web, IOS, Android.
- Le référencement de la PWA
Comme un site web classique, l’application peut être référencée sur les moteurs de recherche via son SEO.
- La PWA est disponible hors-ligne
Certaines des données de l’application peuvent être conservées en cache grâce à des scripts nommés Service Workers qui feront les liens ou non avec les API. Ainsi, il est possible d’avoir accès à l’application sans être connecté à Internet, après une première utilisation avec Internet, évidemment. Les données seront automatiquement mises à jour lors de la reconnexion.
- La PWA est installable sur son mobile
Une PWA est simple d’accès, puisqu’elle s’installe directement sur l’écran d’accueil de l’appareil.
- La PWA est modulable
Une des forces des PWA par rapport à une application web est de pouvoir accéder aux fonctionnalités du smartphone telles que les notifications, l’appareil photo, le Bluetooth, etc. Il est également possible de consulter d’un coup d'œil ce que votre navigateur est capable de gérer comme fonctionnalité du téléphone.
Qu'est-ce qui caractérise une PWA ?
Comme suggéré plus haut, les PWA ne sont pas créées à l'aide d'une seule technologie. Elles constituent une nouvelle philosophie pour faire des applications web, impliquant certains motifs spécifiques, des API, et d'autres fonctionnalités. De prime abord, ce n'est pas évident de savoir si une application web est une application web progressive. Une application peut être considérée comme web progressive si elle remplit certains critères ou implémente un ensemble de fonctionnalités, à savoir:
- Discoverable, afin que le contenu soit trouvé à l'aide de moteurs de recherche.
- Installable, afin d'être disponible sur l'écran d'accueil de l'appareil.
- Linkable, afin que vous puissiez la partager simplement en envoyant un lien.
- Network independent, afin qu'elle fonctionne hors-ligne ou avec une mauvaise connexion internet.
- Progressive, afin qu'elle soit utilisable sur les plus vieux navigateurs, mais complètement fonctionnelle sur les derniers.
- Re-engageable, afin qu'elle soit capable d'envoyer des notifications lorsque du nouveau contenu est disponible.
- Responsive, afin qu'elle soit fonctionnelle sur n'importe quel appareil et résolution d'écran - téléphones mobiles, tablettes, ordinateurs portables, téléviseurs, réfrigérateurs, etc.
- Safe, afin que le connexion entre vous et l'application soit sécurisée et prévienne n'importe quel tiers d'accéder à vos données.
Conclusion
Pour faire simple, une PWA est une version ultra optimisée pour mobile d’un site web, qui est capable d’utiliser certaines fonctionnalités de l’appareil. Le terme progressif vient du fait que l’application est chargée au fur et à mesure de la navigation et non tout d’un coup, une application peut être considérée une application web progressive si elle remplit certains critères, ou implémente un ensemble de fonctionnalités données: fonctionne hors-ligne, est installable, est facile à synchroniser, peut envoyer des notifications push, etc.