Qu’est-ce qu’une PWA (Progressive Web App) ?
Les PWA ont été introduites par Google en 2015. Il s’agit d’applications web développées avec un langage web (HTML5, JavaScript, CSS3…) et qui permet de regrouper le monde des sites web et des applications mobiles natives.
Les dix principes fondamentaux
Une PWA repose sur dix principes fondamentaux :
Progressive : elle fonctionne sur tous les navigateurs web et pour tous les utilisateurs.
Responsive : le rendu UI s’adapte à tous les supports et toutes les tailles d’écran. Une PWA peut donc être utilisée sur mobile, tablette ou ordinateur.
Offline : elle présente un mode déconnecté pour pouvoir fonctionner en hors-ligne et sur les réseaux de mauvaise qualité.
App-Like : la navigation et les interactions sur mobile sont les mêmes que pour une application native.
Mise à jour : le rafraîchissement du contenu se fait régulièrement grâce à la mise à jour d’un service worker.
Sécurité : Utilise le HTTPS pour sécuriser le flux d’échange et s’assurer que le contenu n’a pas été altéré.
Reconnue comme une application par les navigateurs : Identifié comme une application mobile par les moteurs de recherche classiques.
Re-engageable : Permet de prolonger l’implication de l’utilisateur via les notifications push pour le prévenir d’un nouveau changement du contenu.
Installable : Permet à l’utilisateur de l’installer simplement sur la page d’accueil de son smartphone sans passer par les stores (App Store ou Google Play).
Partageable : Se partage facilement et immédiatement en communiquant le lien URL
Quels sont les avantages d’une PWA
Les PWA présentent de nombreux avantages. Il faut comprendre qu’il s’agit avant tout d’une manière de penser les applications webs. Les PWA proposent ainsi d’avoir accès à des fonctionnalités qui étaient jusque-là réservées aux applications mobiles.
De plus, un seul développement sera nécessaire pour plusieurs supports, elles sont accessibles via le web, peuvent-être installées sur le périphérique et donc être accessibles hors-ligne. En plus d’être multi-support, les PWA vont avoir accès à des fonctionnalités natives des mobiles comme les notifications push par exemple.
Ce mode de développement permet de se concentrer sur l’aspect le plus important qui est le fonctionnement pur de l’application web dans un navigateur, pour le passage en application mobile, le navigateur se charge du reste.
Un petit mot sur ses inconvénients
Bien que de nombreux progrès soient réalisés en matière d’accès aux fonctionnalités des supports mobiles, certaines ne sont pas disponibles comme le Bluetooth, les push sur IOS ou l’utilisation d’extensions.
De même, bien qu’elles soient compatibles avec les navigateurs modernes, elles ne sont pas supportées sur les anciennes versions.
Il est également important de bien gérer l’ergonomie de l’interface afin d’éviter des erreurs comme des boutons trop petits sur mobile par exemple.
Quand choisir une PWA ?
Maintenant que nous en savons un peu plus sur ces applications web progressives, nous pouvons nous intéresser aux choix d’une telle solution.
Dans le cas où votre solution doit être accessible via un navigateur sur ordinateur ou bien encore sur un support mobile, une telle solution est parfaitement envisageable. A l’inverse, si l’usage de la solution à fabriquer est uniquement pour des appareils mobiles comme le smartphone ou une tablette sans aucune utilisation Web de la solution sur un ordinateur, une application mobile native ou cross plateforme sera préférable. Enfin, si la solution doit embarquer des fonctionnalités natives très importantes, on pourra s’orienter vers une application mobile hybride ou native.
Enfin, lorsque les traitements sont lourds sur le mobile avec des calculs ou des données importantes à traiter en mode déconnecté ou des scans à faire ou des photos à prendre et à stocker sur le mobile, la PWA n’est plus adaptée.
Les applications mobiles natives ou les PWA répondent à des besoins différents et peuvent même être complémentaires. C’est pourquoi nous sommes là pour vous orienter vers la solution les solutions les plus adaptées à vos besoins.
Une question, un projet ? Nous vous aidons à définir votre projet.