Articles

Application web progressive

Il existe de nombreuses technologies couramment utilisées pour créer des applications web progressives. Toutes les PWA nécessitent au minimum un travailleur de service et un manifeste.

ManifesteEdit

Le manifeste d’application web est une spécification du W3C définissant un manifeste basé sur JSON (généralement étiqueté manifest.json) pour fournir aux développeurs un endroit centralisé pour mettre les métadonnées associées à une application web, y compris :

  • Le nom de l’application web
  • Les liens vers les icônes ou les objets images de l’application web
  • L’URL préférée pour lancer ou ouvrir l’application web
  • Les données de configuration de l’application web
  • L’orientation par défaut de l’application web
  • L’option pour définir le mode d’affichage, par ex.ex. plein écran

Ces métadonnées sont cruciales pour qu’une app soit ajoutée à un écran d’accueil ou autrement répertoriée aux côtés des apps natives.

Support iOSModifier

iOS Safari met partiellement en œuvre les manifestes, tandis que la plupart des métadonnées PWA peuvent être définies via des extensions spécifiques à Apple des balises méta. Ces balises permettent aux développeurs d’activer l’affichage plein écran, de définir des icônes et des écrans d’accueil, et de spécifier un nom pour l’application.

WebAssemblyEdit

Article principal : WebAssembly

WebAssembly permet au code précompilé de s’exécuter dans un navigateur web, à une vitesse quasi-native. Ainsi, des bibliothèques écrites dans des langages tels que le C peuvent être ajoutées aux applications web. En raison du coût du passage des données de JavaScript à WebAssembly, les utilisations à court terme concerneront principalement le traitement des chiffres (comme la reconnaissance vocale et la vision par ordinateur), plutôt que des applications entières.

Stockage de donnéesModification

Les contextes d’exécution des applications Web progressives sont déchargés chaque fois que possible, de sorte que les applications Web progressives doivent stocker la majorité de l’état interne à long terme (données utilisateur, ressources d’application chargées dynamiquement) de l’une des manières suivantes

Stockage WebModification

Article principal : Stockage Web

Le stockage Web est une API standard du W3C qui permet le stockage clé-valeur dans les navigateurs modernes. L’API se compose de deux objets, sessionStorage (qui permet le stockage en session seulement qui est effacé à la fin de la session du navigateur) et localStorage (qui permet le stockage qui persiste à travers les sessions).

Service workersEdit

Un service worker est un travailleur web qui implémente un proxy réseau programmable qui peut répondre aux requêtes web/HTTP du document principal. Il est capable de vérifier la disponibilité d’un serveur distant et de mettre en cache du contenu lorsque ce serveur est disponible, et de servir ce contenu ultérieurement au document. Les travailleurs de service, comme tous les autres travailleurs web, travaillent séparément du contexte du document principal. Les travailleurs de service peuvent gérer les notifications push et synchroniser les données en arrière-plan, mettre en cache ou récupérer les demandes de ressources, intercepter les demandes de réseau et recevoir des mises à jour centralisées indépendamment du document qui les a enregistrés, même lorsque ce document n’est pas chargé.

Les travailleurs de service passent par un cycle de vie en trois étapes : enregistrement, installation et activation. L’enregistrement consiste à indiquer au navigateur l’emplacement du travailleur de service en vue de son installation. L’installation se produit lorsqu’il n’y a pas de travailleur de service installé dans le navigateur pour la webapp, ou s’il y a une mise à jour du travailleur de service. L’activation se produit lorsque toutes les pages de la PWA sont fermées, afin qu’il n’y ait pas de conflit entre la version précédente et la version mise à jour. Le cycle de vie permet également de maintenir la cohérence lors du passage d’une version à l’autre du travailleur de services, puisqu’un seul travailleur de services peut être actif pour un domaine.

Modification de l’API de base de données indexée

Article principal : API de base de données indexée

L’API de base de données indexée est une API de base de données standard du W3C disponible dans tous les principaux navigateurs. L’API est prise en charge par les navigateurs modernes et permet le stockage d’objets JSON et de toute structure représentable sous forme de chaîne. Indexed Database API peut être utilisée avec une bibliothèque wrapper fournissant des constructions supplémentaires autour d’elle.

AppCache (obsolète)Edit

Article principal : Manifeste de cache en HTML5

Application Cache (ou AppCache ou HTML5 cache manifest) est une technologie antérieure qui permettait à l’application de mettre en cache le contenu à l’avance pour une utilisation ultérieure lorsque le périphérique est hors ligne. Elle fonctionne de manière adéquate pour les applications à page unique pour lesquelles elle a été conçue, mais échoue de manière problématique pour les applications multi-pages comme les wikis. En mai 2019, cette technologie est prise en charge par les principaux navigateurs et utilisée depuis des années par certains sites, mais elle est déjà dépréciée au profit des travailleurs de service et sera finalement supprimée.

Laisser un commentaire

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