Les services workers utiles aux PWA bientôt compatibles avec Safari

Mathieu Chartier Développement 0 commentaire

Progressive web apps de Google

Les fans de développement mobile devraient se réjouir, le navigateur Safari d'Apple devrait bientôt être compatible avec les services workers nécessaires pour faire fonctionner des progressive web apps (PWA). Actuellement, seuls Google Chrome, Mozilla Firefox et Opera sont compatibles (source : caniuse), alors l'arrivée de Safari dans la liste ne laisserait plus que la dernière roue du carrosse, IE/Edge, incompatible.

Les progressive web apps sont des applications web-mobiles de nouvelle génération, qui se n'inscrivent pas dans l'Apple Store ou dans le Play Store d'Android, et qui sont construites à l'aide de technologies courantes (HTML, CSS, Javascript essentiellement). Pour tourner, elles nécessitent notamment l'usage de services workers, à savoir des sortes de proxy qui s'interfacent entre le navigateur, le réseau et les web apps. Jusqu'à présent, les PWA ont été mises en lumière par Google et les API de services workers sont encore peu compatibles avec tous les navigateurs mobiles.

En effet, si nous pouvons avoir l'idée de développer une application web généraliste qui s'adapte à la fois aux écrans d'ordinateur et aux écrans des mobiles grâce au responsive web design, il semblerait plus intéressant dans un premier temps de développer une web-app mobile. Dans ce cas, nous nous moquons pas mal de certains navigateurs dont les parts de marché sont faméliques sur les supports nomades. Ainsi, si Safari rejoint la clique des compatibles, nul doute que les progressive web apps pourront enfin se développer davantage.

Si les PWA ne remplaceront pas les applications natives, elles présentent tout de même de sacrés atouts pour tous les fans d'apps mobiles (concepteurs ou utilisateurs), à condition de ne pas avoir besoin d'accéder à certaines fonctionnalités profondes des téléphones :

  • développement applicatif dans des langages courants et connus (HTML 5, Javascript...) ;
  • compatibilité avec tous les mobiles du marché (selon le navigateur utilisé) puisque les PWA sont indépendantes des langages natifs (Objective-C ou Swift pour iOS, Java pour Android, C# pour Windows Phone...) ;
  • possibilité d'activité certaines fonctionnalités avancées (API push pour les notifications, API de paiement en ligne, etc.) ;
  • application légère et rapide, qui ne s'installe pas sur le smartphone (donc aucune perte de mémoire ROM) avec possibilité d'ajouter un bouton d'accueil (icône sur le "bureau" des smartphones).

Il faut bien avouer que les PWA auront un coût bien inférieur à certaines applications natives, tout en répondant aux besoins d'une large majorité des applications mobiles existantes. La compatibilité des navigateurs avec les API de services workers ou les API de fonctionnalités (notifications, paiement, météo...) compte énormément pour le développement de ces web apps en devenir...