Aller au contenu

Préférences et cookies

Afin d’améliorer votre expérience sur notre site et de réaliser des statistiques de visites, nous utilisons des cookies. Rien n’est déposé sans votre accord, et le refus n’enlève l’accès à aucun contenu. Ce choix peut être modifié à tout moment.

Gérer les traceursVos données

Personnaliser

ArticleApplications & Développement

Google améliore la compatibilité ES6 et l'interopérabilité de Polymer 2.0

Livré presque deux ans après la version 1.0, Polymer 2.0 promet d'améliorer considérablement le support des normes ECMAScript 6 et l'interopérabilité avec d'autres bibliothèques et frameworks.

La rédaction

Polymer, la bibliothèque JavaScript open source de Google qui permet de construire des éléments HTML réutilisables, passe en version 2.0. Cette révision majeure améliore le système de données, l'interopérabilité avec d'autres bibliothèques et frameworks Web et le support des normes ECMAScript 6, la spécification officielle sous-jacente de JavaScript implémentée dans les navigateurs Web. Cette version 2.0, qui arrive presque deux ans après Polymer 1.0, est conforme aux Custom Elements HTML v1 pour créer de nouvelles balises HTML et avec le Shadow DOM v1 qui permet d'encapsuler de manière autonome du JavaScript et du CSS au sein d'un Web Component. Les développeurs peuvent désormais s'appuyer sur les API de Polymer associées aux deux spécifications.

Selon les notes de version, Polymer 2.0 utilise les classes ECMAScript 6 standard et les Custom Elements v1 plutôt qu'une méthode faisant appel à des fonctions Factory dans Polymer. Les développeurs peuvent mélanger des fonctions de Polymer avec du JavaScript standard, même si la méthode Factory est toujours supportée en passant par une couche de compatibilité. « Polymer 2.0 est basé sur des standards de plates-formes Web prises en charge nativement sur plus d'un milliard de périphériques mobiles », a déclaré Wendy Ginsberg, responsable de projet pour Polymer, lors de la récente conférence Google I/O qui s’est tenue du 17 au 19 mai à Mountain View, dans la Silicon Valley. « La mise à jour de Polymer 2.0 pèse le quart du poids de Polymer 1.0 », a-t-elle précisé. Les composants Web construits avec la version 2.0 sont interopérables par défaut, ce qui signifie qu'ils peuvent être utilisés dans des frameworks JavaScript courants.

Compatibilité ascendante pour la migration

Les améliorations apportées au système de données permettent de résoudre plus facilement des problèmes de propagation de données entre les éléments. Une gestion plus rapide des tableaux associée à la modification de données en batch améliore également la performance et l'exactitude. Avec Polymer 2.0, il n’est plus nécessaire d'utiliser Polymer.dom pour la manipulation DOM, ce qui facilite l’usage de composants Polymer avec d'autres bibliothèques et frameworks de développement Web. De plus, le code DOM douteux est reconditionné dans un composant Polyfil réutilisable, au lieu d'être intégré dans Polymer.

Pour migrer de Polymer 1.0 vers Polymer 2.0, ce dernier dispose d'une couche de compatibilité ascendante qui permet aux éléments écrits avec l'API 1.0 de cibler l'API 2.0 et les fonctions du navigateur en natif. Un modèle hybride permet aux développeurs de porter des éléments dans un sous-ensemble commun de fonctions dans Polymer 1.0 et Polymer 2.0. Selon Google, ces éléments peuvent être exécutés dans des applications ciblant chaque version de la bibliothèque. À noter que certains changements mineurs dans les modèles seront peut-être nécessaires pour effectuer la migration. Enfin, Polymer 2.0 est livré avec un chargeur Polyfill amélioré qui ne charge que les Polyfills nécessaires au navigateur, réduisant ainsi la charge utile. Avec Polymer, Google espère aider les développeurs à construire des applications Web progressives qui peuvent offrir une expérience applicative plus proche d’une expérience native, quels que soient le facteur de forme et le navigateur utilisés.

Newsletter

La Quotidienne LMI

Recevez chaque matin l’actualité IT de la rédaction.

Google améliore la compatibilité ES6 et l'interopérabilité de Polymer 2.0