Même si le Web est une plate-forme puissante, il reste encore des lacunes. Les entreprises qui souhaitent développer pour le Web, mais qui ont besoin de fonctionnalités plus différentes, sont obligées de regrouper leurs applications Web dans des wrappers et de les publier sur des plates-formes de téléchargement d'applications.
Les développeurs peuvent choisir de proposer leur propre navigateur personnalisé sous forme d'applications spécifiques à une plate-forme, ce qui augmente de façon disproportionnée la taille de leurs applications Web. Cela les obligera également à assumer la charge supplémentaire de sécurité et de maintenance en gardant à jour la duplication et le wrapper de navigateur.
De plus, cette approche perd la portée du Web. Elle est souvent obligée de choisir les appareils et les systèmes d'exploitation compatibles, qui nécessitent souvent différents wrappers, ce qui accroît la charge de sécurité et de maintenance.
Combler ces lacunes est essentiel pour résoudre ce problème et faire du Web la plate-forme logicielle du futur, capable de couvrir un maximum de cas d'utilisation par rapport aux SDK propres à chaque plate-forme.
Projet Fugu
C'est là que le projet de capacités, connu sous le nom de Project Fugu, entre en jeu. Le projet de capacités, ou Project Fugu, est une initiative interentreprises visant à permettre aux applications Web d'avoir les mêmes capacités que les applications spécifiques à une plate-forme en exposant celles-ci au Web, tout en préservant la sécurité, la confidentialité et la confiance des utilisateurs, ainsi que d'autres principes fondamentaux du Web.
Suivre les capacités
Un outil public de suivi est disponible pour suivre toutes les tâches de déploiement de nouvelles fonctionnalités. Sur le coach électronique, vous pouvez voir:
- État de chaque API en cours de traitement ou envisagée.
- Plates-formes ciblées par l'API.
- Liens et informations supplémentaires pour chaque API
- Fonctionnalités de recherche et de filtrage
- Vue chronologique
Demander une capacité
Comment faire si vous souhaitez demander une nouvelle fonctionnalité ? Vous pouvez signaler un problème dans l'outil de suivi des bugs Chromium ou accéder à webwewant.fyi et remplir un formulaire pour contacter les fournisseurs de navigateurs correspondants.
Le processus associé à chaque capacité
Avant le lancement, une API en cours peut se trouver dans deux états, qui vous permettent tous deux de les tester.
- Un essai avec les développeurs: la fonctionnalité est accompagnée d'un drapeau, l'API n'est pas nécessairement stable et vous ne devez pas l'implémenter pour de vrais utilisateurs. Vous pouvez activer ou désactiver les indicateurs dans les navigateurs basés sur Chromium en accédant à
about:flags
, ce qui vous permet d'effectuer les tests sur votre propre instance de navigateur.
- Phase d'évaluation: état dans lequel les fonctionnalités peuvent être activées par origine. Les développeurs peuvent exécuter des tests pour une audience plus large que sur leur seule instance de navigateur, mais la fonctionnalité est toujours en cours de test et l'implémentation peut changer (voir ci-dessous).
Phases d'évaluation
Les phases d'évaluation vous permettent de tester de nouvelles fonctionnalités et de donner votre avis sur la facilité d'utilisation, l'efficacité et l'efficacité à la communauté des standards Web. Les API disponibles dans le cadre de la phase d'évaluation sont les suivantes:
- Expérimental, ils peuvent changer et devenir indisponibles. Par exemple, ils peuvent ne plus être disponibles au-delà du test. De plus, ils peuvent être indisponibles pendant un certain temps, même s'ils sont finalement activés pour tous les utilisateurs. Dans la mesure du possible, vous devez donc implémenter la détection des fonctionnalités ou la dégradation progressive pour gérer les cas où la fonctionnalité n'est pas disponible.
- Ils sont suffisamment stables pour être utilisés par de vrais utilisateurs, mais peuvent changer au cours de l'essai.
- Limitée à tous les utilisateurs dans le monde pour vous assurer qu'elles ne deviennent pas une norme de facto. Nous vous recommandons donc d'activer la fonctionnalité dans votre codebase en suivant les consignes relatives aux essais de chaque navigateur pour un sous-ensemble de vos utilisateurs.
- Cette version est limitée au fournisseur du navigateur qui lance la phase d'évaluation. Par conséquent, la phase d'évaluation de Chrome ne fonctionne pas dans Safari, Firefox ou Edge, par exemple.
Si ces exigences vous conviennent, vous pouvez enregistrer une origine pour participer à un essai. Pour savoir comment vous inscrire à la phase d'évaluation dans Chrome, cliquez ici. Pour Microsoft Edge, suivez ce lien.
Fonctionnalités expérimentales de Safari
Safari permet également aux développeurs de tester des API et des fonctionnalités nouvelles ou inachevées, mais ne fournit pas de phases d'évaluation. Vous ne pouvez pas activer les fonctionnalités expérimentales de Safari pour les utilisateurs.
La solution de Safari est semblable aux options, connues sous le nom de fonctionnalités expérimentales. Chaque nouvelle version de Safari contient de nombreuses fonctionnalités expérimentales, certaines activées et d'autres désactivées par défaut.
En tant que développeur, vous pouvez modifier ces paramètres par défaut à l'aide des éléments suivants:
- Menu "Développer" des fonctionnalités expérimentales dans Safari pour macOS
- Application Réglages pour iOS et iPadOS, en accédant à Safari, Paramètres avancés, Fonctionnalités expérimentales
Fonctionnalités expérimentales de Firefox
Firefox propose des fonctionnalités expérimentales par le biais de paramètres que vous pouvez activer ou désactiver en accédant à l'éditeur de configuration à l'aide de about:config
.