Les Progressive Web Apps, kesako ? Les Progressive Web Apps, kesako ?

Les Progressive Web Apps, kesako ?

par ,
le 16 mars 2017

0
0

On entend de plus en plus parler des PWA (Progressive Web Apps) comme étant une nouvelle technologie qui va révolutionner le web et sonner le glas des applications mobiles natives. Je pense qu’il est nécessaire de faire le point sur le sujet et analyser différents points comme leurs mises en place, les avantages et les inconvénients.

Pourquoi les Progressive Web apps ?

En 2007 Steve Jobs déclarait :

The full Safari engine is inside of iPhone. And so, you can write amazing Web 2.0 and Ajax apps that look exactly and behave exactly like apps on the iPhone. And these apps can integrate perfectly with iPhone services. They can make a call, they can send an email, they can look up a location on Google Maps. And guess what? There’s no SDK that you need! You’ve got everything you need if you know how to write apps using the most modern web standards to write amazing apps for the iPhone today. So developers, we think we’ve got a very sweet story for you. You can begin building your iPhone apps today.

Ce qui signifie en résumé qu’il serait possible (depuis 2007) de créer des web apps agissant comme des applications natives.

Mais pourquoi préférer les web apps aux applications natives ? Car les sites web posent un problème et engendre un temps de visite faible par rapport aux applications natives :

progressive-web-app

On peut voir qu’un utilisateur de smartphone visite presque 3 fois plus de site web qu’il n’utilise d’applications mais passe plus de 20 fois moins de temps dessus …

Et pour tenter de résoudre ce problème, Google a décidé de déterrer les webs apps en présentant les Progressive Web Apps.

Une nouvelle façon de proposer des expériences utilisateurs incroyables sur le web

C’est exactement grâce à cette accroche que Google présente les PWA. Mais que proposent t-elles réellement ?

Tout d’abord il faut savoir que les PWA ne sont disponibles que sur Android. Découvrons étape par étape à quoi ressemble une PWA sur un LG G4, sur le site de Flipboard

Progressive Web App installation step 1

On peut déjà remarquer un problème, Flipboard propose dans un premier temps d’installer l’application native (bandeau en haut de page), puis de mettre en place la PWA. Cela prête déjà à confusion …

Aux yeux de l’utilisateur, l’idée est de lui proposer de rajouter le site web que vous visitez sur l’écran d’accueil du téléphone.

Progressive Web App installation step 2

En cliquant sur le bouton « Ajouter à l’écran d’accueil », l’icône s’ajoute.

Progressive Web App installation step 3

Et en ouvrant cette nouvelle « application », un splash screen apparaît immédiatement pendant un bref instant :

Progressive Web App installation step 4

Puis l’application est ouverte :

Progressive Web App installation step 5

L’application a le même aspect et les mêmes fonctionnalités que le site web et peut être consultée hors-ligne. On peut remarquer une nouvelle fois qu’elle demande d’installer l’application native …

Elle est également considérée comme une application à part entière dans le gestionnaire d’application ouverte :

Progressive Web App installation step 6

 

On peut voir que l’installation d’une PWA est très simple et rapide mais peut-on vraiment parler d’installation ? Oui et non. A part un raccourci qui ouvre une web app dans un processus spécifique et avec un cache étendu rien ne s’est réellement passé, elle n’apparaît pas dans la liste des applications installées.

Si vous souhaitez tester vous même, vous pouvez retrouver sur pwa.rocks un nombre important de Progressive Web Apps.

Par contre, pour l’utilisateur, de nombreuses différences par rapport à une page web existent :

  • Sentiment de rapidité car il n’y a plus de page blanche au chargement mais un splash screen.
  • La page se lance comme une application classique
  • Elle peut accéder à des éléments du téléphone comme la caméra
  • Les notifications sont disponibles

Il y a également plusieurs différences par rapport à une application native :

  • L’installation est bien plus simple, il ne faut pas passer par un store, ni télécharger de lourdes ressources que l’on a déjà la plupart du temps
  • Les performances sont meilleures : moins gourmand et tout aussi rapide

Les PWA ne sont pas encore disponibles pour desktop même si cela pourrait être une alternative intéressante à des solutions comme Electron.

Et pour les Développeurs ?

Pour les développeurs web, les avantages sont énormes ! Pas besoin d’apprendre un nouveau langage comme Java dans notre cas, un développeur web peut très facilement développer une Progressive Web Apps ou même adapter un site web existant en suivant les différents critères d’une PWA.

  • Adaptative : l’application doit s’adapter à son environnement, aussi bien réseaux, écran, puissance, ect
  • Progressive : le passage d’un site web desktop à une application mobile doit être naturel
  • Sécurisé : compatible HTTPS
  • Offline :  doit être utilisable sans connexion internet
  • Mise à jour : est constamment à jour grâce aux services workers
  • Partageable : l’application reste basée sur un site web, donc très facilement partageable grâce à l’URL. Bien plus facilement qu’une application.
  • Ressemble à une application : doit disposer d’une icone, a sa propre entrée dans le gestionnaire d’application ouverte

Tout ce qui concerne le nom de l’application, ses icônes, et d’autres options sont à configurer dans un fichier manifest, vous pouvez trouver plus d’infos sur la documentation officielle de Google

Donc c’est la fin des applications natives ?

Non.

Les Progressives Web Apps ne peuvent pas (du moins pour le moment) remplacer les applications natives. En effet, de nombreuses applications utilisent des API bas niveau pour fonctionner, aussi bien pour des questions de performances que de fonctionnalités. C’est par exemple cas de l’API Vulkan pour Android. De plus, les PWA ne sont pas compatibles avec iOS.

Dois-je faire une application native ou une Progressive Web App ?

En 2017, cette question doit être systématiquement posée.

Je ne pense pas que les PWA dépasseront les applications natives à court ou même moyen terme de part leurs limites techniques.

Cependant, si vous souhaitez lancer une application e-commerce ou éditoriale et que votre site web est déjà efficace sur mobile, les PWA sont une alternative très intéressante. Le budget sera beaucoup moins important aussi bien à la création qu’à la maintenance. Lorsqu’elles seront compatibles iOS (si cela arrive un jour …), la question devra être posée autrement.

Il ne faut pas oublier également que Google est derrière le concept et a beaucoup à y gagner : leur plus gros revenu vient de la publicité sur le web, il possède le navigateur le plus utilisé au monde et pourrait donc avoir la main sur une nouvelle facette de nos smartphones.

Finalement, préconiser une Progressive Web App au lieu d’une application native s’avère en fin de compte compliqué pour le moment car ça reviendrait à se fermer à tout le marché iOS et à ne pas être présent sur les stores d’applications. Cependant, une PWA peut être un + assez peu coûteux à un site web ayant une position mobile déjà mature.

mots-clés :

, , , ,

,

articles à lire ensuite...

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

0
0

Les Progressive Web Apps, kesako ?