Pourquoi choisir de développer une « Progressive Web App » plutôt qu’une application mobile native ?

     Le concept créé par Google et baptisé « Progressive Web Apps » a été présenté pour la première fois lors du Chrome Dev Summit en 2015. Selon Google, les progressive web apps (PWA) « combinent le meilleur du web et le meilleur des applications ».

   Une Progressive Web App (ou « PWA ») n’est pas une application mobile comme les autres : elle n’est pas dite « native » comme celles que l’on peut télécharger sur l’App Store (iOS) ou sur le Google Play (Android).

   À la différence de celles-ci, une « PWA » est en fait un site internet développé spécifiquement pour les mobiles. Autrement dit, une Progressive Web App est accessible directement depuis un navigateur internet au même titre qu’un site internet classique.

   Pourtant là où réside la subtilité d’une PWA c’est qu’elle offre une expérience utilisateur semblable à celle d’une application mobile native. En effet, elle n’est pas simplement ergonomique et « mobile friendly » comme peut l’être un site web qui a été adapté mobile. Une Progressive Web App dispose aussi de fonctionnalités supplémentaires que ne fournit pas le Web mobile comme celles de pouvoir utiliser des notifications Push, l’appareil photo, le GPS ou encore de pouvoir installer une icône directement sur le smartphone de l’utilisateur, comme le propose les applications mobiles natives.

   Alors si une PWA est si ressemblante à une application mobile native, pourquoi choisir cette technologie ?

Le coût de développement est très inférieur à celui d'une application mobile native

   Je ne vous apprends rien en vous disant que le monde des applications mobiles est dominé par deux géants de la tech à savoir Apple et Google.

   Au deuxième trimestre 2020 et d’après les données collectées par Kantar World Panel, Android et Apple se partageaient respectivement 75,1% et 24,7% des parts du marché français, là où Microsoft atteignait péniblement la barre des 0,1%.

Android et IOS

Par conséquent, lorsqu’on souhaite développer une application mobile, il faudrait en théorie la rendre accessible à la fois aux utilisateurs d’iPhone et à ceux utilisant Android (Samsung, Huawei, Google, Xiaomi…), au risque sinon de réduire de manière importante le flux potentiel d’utilisateurs.

Sur le principe, cette logique est vraie. La part d’Android sur le marché des applications est colossale et à côté, se passer des utilisateurs d’iPhone considérés comme plus engagés dans leur utilisation des applications mobiles serait un pari risqué.

   Seulement voilà, ce « dilemme » n’est pas à la portée de toutes les bourses dans la mesure où développer une application mobile native et la rendre accessible sur l’App Store et le Google Play est un véritable gouffre financier que peu d’entreprises sont prêtes à assumer.

   En effet, développer une application mobile disponible sur chacun des deux stores nécessite de la faire développer dans deux technologies différentes (le langage Swift ou l’Objective-C pour les applications IOS et le langage Kotlin pour les applications Android). Cela signifie que pour chaque nouvelle fonctionnalité que vous souhaitez implémenter, vous devrez réaliser du développement sur chacune des technologies soit un coût de développement et de maintenance multiplié par deux.

   Je vous passe aussi les joies des mises à jour « surprises » des OS qui impliquent une maintenance quasi-permanente du code sans même penser à proposer de nouvelles fonctionnalités à ses utilisateurs.

   Le premier avantage à choisir de développer une Progressive Web App plutôt qu’une application mobile native réside donc dans son coût de développement et de maintenance qui est largement inférieur à celui d’une application mobile native. Avec une seule technologie plutôt que deux, vous réduisez en toute logique l’effort de développement.

Le terme « progressivité » prend tout son sens

   Le terme de « progressivité » signifie que tout le monde peut utiliser votre application, quel que soit le navigateur choisi.

   Aujourd’hui et particulièrement depuis la période de confinement liée au Covid-19 , il n’y a plus vraiment de débat sur l’importance d’avoir ou pas une présence sur le web lorsqu’on est un professionnel.

   En revanche, avec plus de 4 internautes sur 10 qui utilisent exclusivement leur mobile pour surfer sur le web (d’après la dernière étude annuelle de Médiamétrie sur Internet en France), la question à se poser est désormais de savoir si son site web est bien « taillé » à l’usage du mobile.

   Dans de nombreux cas et en particulier pour un site vitrine, l’usage des Médias Queries peuvent largement suffire pour rendre un site web « responsive design » c’est-à-dire un site web capable d’adapter son ergonomie (UI/UX) à l’usage du mobile ou des tablettes (en l’occurrence à de petits écrans).

 

UI/UX

Les Médias Queries s’apparentent simplement à des lignes de code (CSS3) qui permettent d’adapter le contenu d’une page web aux caractéristiques de l’appareil de l’utilisateur.

   Mais pour répondre à d’autres types de besoins comme l’utilisation des notifications Push ou d’autres éléments fonctionnels en lien direct avec l’usage du smartphone, les PWA viennent bousculer le monopole des applications mobiles natives en proposant la même expérience tout en étant accessible sur tous les périphériques depuis un simple navigateur internet.

   Ainsi, ce qui amenait les entreprises à développer un projet en version mobile à savoir, l’utilisation des fonctionnalités intrinsèques du smartphone et l’expérience utilisateur immersive qui en était induite, n’est plus la seule option : la PWA est une formidable opportunité de bénéficier des mêmes avantages qu’une application mobile native tout en restant accessible de façon transversale sur l’ensemble des périphériques, mobiles ou non.

La rapidité et la gestion du mode hors ligne

   Les PWA exploitent plusieurs technologies clés qui reposent essentiellement sur une combinaison de l’architecture « application shell » et des service workers.

PWA-Hors-LigneLes « Service Workers » sont des scripts qui fonctionnent en parallèle de la page Web. Ils apportent des gains de performance grâce à une mise en cache hors ligne intelligente et le chargement instantané pour des visites répétées sur votre site ou votre application web.

En d’autres termes, ces services workers permettent de naviguer plus rapidement dans votre application en donnant également la possibilité de consulter du contenu sans forcément être connecté au réseau.

Ils incluent aussi d’autres fonctionnalités comme les notifications Push, précédemment la « chasse gardée » de l’application mobile native.

   Utiliser une PWA plutôt qu’une application mobile native n’est donc pas synonyme d’appauvrissement de l’expérience utilisateur. Au contraire, elles sont plus rapides et plus légères et les entreprises qui ont choisi cette technologie observent des résultats très encourageants sur l’usage de leur service :

  • Twitter (application Twitter Lite) : déployé dans une quarantaine de pays, en Afrique et en Inde notamment. 75% de tweets envoyés en plus, 65% de tweets vus supplémentaires, 20% de taux de rebond en moins.
  • Pinterest : disponible sur le store Windows 10. 800 000 utilisateurs hebdomadaires de la PWA et 843% d’inscriptions en plus.
  • AliExpress : 2x plus de pages visitées, 74% de temps passé en plus sur le site, 104% de conversions en plus pour les nouveaux utilisateurs.

Un meilleur référencement naturel de l’application (SEO)

L’autre avantage de la PWA par rapport à l’application mobile native concerne le référencement naturel, c’est-à-dire sa capacité à être trouvée par un internaute à partir de mots-clés.

PWA-SEOEn effet, contrairement à une application mobile qui est uniquement disponible sur un store (App Store ou Play Store par exemple), la PWA est avant tout une application web. Son contenu est donc indexé par les moteurs de recherche au même titre qu’un site internet classique ce qui lui offre une plus grande visibilité.

Naturellement, pour espérer sortir parmi les premiers résultats de recherche, il faudra travailler correctement l’optimisation du contenu mais croyez-en mon expérience, positionner son application mobile native sur l’App Store ou le Play Store dans les premiers résultats est bien plus complexe et surtout, nécessite bien plus de budget que positionner correctement une PWA sur les recherches Google.

D’autre part, le fait qu’une PWA soit plus légère qu’une application mobile et plus rapide qu’un site web mobile améliore aussi le référencement naturel, car le moteur de recherche de Google a tendance à favoriser les sites web ayant des temps de chargement rapides.

Quelques inconvénients tout de même

   Restons objectif, comme toute technologie, la PWA a aussi ses défauts mais à vrai dire, ils ne sont pas nombreux.

   Tout d’abord il existe encore certaines incompatibilités avec les navigateurs internet comme IE, Edge ou Safari en particulier sur des versions anciennes. Malgré tout, les choses bougent et ces navigateurs comment à rattraper leur retard face à Chrome, Firefox ou encore Opera.

   D’autre part et contrairement à une application mobile native, il est impossible pour une PWA d’être monétisée : oubliez donc la possibilité de proposer une application en téléchargement payant comme vous pourriez le faire avec une application iPhone ou Android.

   Enfin pour qu’une PWA soit de bonne qualité et qu’elle puisse rivaliser voire dépasser une application mobile native, elle doit, selon Google, respecter un certain standard.

Elle doit être :

  • Fiable :charger instantanément et être en mesure de fonctionner (partiellement) même en cas de couverture limitée ou si l’internaute est hors connexion (gestion fine du cache, synchronisations en arrière-plan…)
  • Rapide :répondre rapidement aux interactions des internautes. La performance est un point clé des PWA, il est essentiel d’intégrer l’optimisation des performances à toutes les étapes du développement.
  • Engageante :les Progressive Web Apps peuvent être installées, depuis un site web ou un magasin d’applications, et intégrer des mécanismes de réengagement tel que les notifications push sur mobile.

Pour conclure...

   Développer un projet en PWA est aujourd’hui une solution à la fois économique et performante qui permet de lier le meilleur des deux mondes : le web et le mobile.

   Accessible depuis tous les périphériques avec un simple navigateur web, la Progressive Web App offre une expérience utilisateur vraiment aboutie, associant ergonomie et fonctionnalités immersives propres au mobile.

   À condition donc de respecter ces règles de développement, la PWA est donc une excellente solution pour asseoir votre présence digitale et renforcer l’engagement de vos utilisateurs. C’est aussi une solution beaucoup plus économique que le développement d’une application mobile native.

   Pour terminer, voici un petit tableau récapitulatif des différences entre une PWA et une application mobile native .

Différences entre une PWA et une application mobile native

Différences entre PWA et application mobile native

Si vous avez un projet de développement d’une application mobile, n’hésitez pas à me contacter. Je développe des sites web et des applications mobiles sous React et Node.js et je suis peut-être le développeur qu’il vous faut pour mener à bien votre prochain projet de PWA 😉