L'équipe jQuery vient d'annoncer une nouvelle version de la célèbre bibliothèque JavaScript : jQuery 3.4.0. Il s'agit de la dernière version de la branche 3.x, avant de passer à une refonte avec jQuery 4.0. Mais avant d’arriver à la version 4.0, plusieurs améliorations viennent dans jQuery 3.4.0. Parmi les plus importantes, on note une amélioration de performance dans .width et .height, le support des attributs nonce et nomodule, mais surtout la dépréciation des sélecteurs de position en prévision de la suppression de Sizzle, le moteur de sélection dans jQuery.
Précisons-le, l'API de base de jQuery consiste à sélectionner un élément, puis à faire quelque chose avec ce qui a été sélectionné. Sizzle, le moteur de sélection dans jQuery, gère la première partie. C’est un petit moteur rapide et efficace qui a ouvert la voie à des API de sélecteur natif telles que querySelectorAll ainsi qu’à des sélecteurs JavaScript et CSS natifs supplémentaires. Mais maintenant, beaucoup de ces sélecteurs sont intégrés dans les navigateurs modernes. L'équipe jQuery estime donc qu'il est presque temps de dire au revoir à Sizzle, ce qu'elle prévoit de faire dans la prochaine version de la bibliothèque JS.
Supprimer Sizzle dans jQuery 4.0 nécessite toutefois de supprimer également ce que l'équipe jQuery appelle les sélecteurs de position, qui sont des sélecteurs non standard. Plus précisément, dans jQuery 3.4.0, :first, :last, :eq, :even, :odd, :lt, :gt, et :nth sont obsolètes. Lorsque Sizzle sera supprimé, il sera remplacé par une solution autour de querySelectorAll. L'équipe jQuery estime que ce compromis en vaut la peine. Elle rappelle aussi qu'elle continuera à prendre en charge les méthodes de position, telles que .first, .last et .eq, et que tout ce que vous pouvez faire avec les sélecteurs de position, vous pouvez le faire également avec les méthodes de position.
Plusieurs corrections de bogues et beaucoup d'autres petits changements ont été introduits dans jQuery 3.4.0. Vous pouvez les consulter dans le changelog.
Pour les développeurs web qui ne jurent que par jQuery, cette mise à jour est une bonne nouvelle et ils attendent avec impatience jQuery 4.0, sachant que la version 3.0 est sortie il y a bientôt trois ans de cela. Mais pour d'autres, c'est avec indifférence qu'ils accueillent aujourd'hui les nouveautés du côté de jQuery, estimant que jQuery n'est plus aussi utile qu'il ne l'était à ses débuts...
jQuery, une technologie en voie d'obsolescence ?
Depuis sa création en 2006 et notamment à cause de la complexification croissante des interfaces Web, jQuery a connu un large succès auprès des développeurs Web et son apprentissage est aujourd'hui un des fondamentaux de la formation aux technologies du Web. « Tous les développeurs web de la fin des années 2000 ont utilisé l’incontournable bibliothèque jQuery pour naviguer dans le DOM d’une part et simplifier l’utilisation d’AJAX d’autre part. Cette bibliothèque était incontournable pour ses performances et le spectre des fonctionnalités qu’elle couvrait. En effet, non seulement on pouvait économiser un volume de code JavaScript impressionnant pour réaliser des applications web (donc du temps de développement), mais certaines manipulations de pages HTML auparavant quasi impossibles étaient devenues abordables », en témoignait un des membres de la communauté Developpez.com il y a trois ans.
jQuery est actuellement la bibliothèque JS la plus utilisée au monde et bon nombre de frameworks modernes l'utilisent pour fonctionner. Mais avec l'émergence de nouvelles technologies (bibliothèques et frameworks) et la modernisation des navigateurs, le caractère incontournable, voire la pertinence, de jQuery ne fait plus l'unanimité. Les problèmes qui autrefois nécessitaient jQuery sont maintenant en train d'être résolus par les navigateurs et le standard EcmaScript en évolution. Certains développeurs commencent donc à prendre leur distance de la bibliothèque jQuery. C'est le cas de l'équipe Bootstrap qui a annoncé l'abandon de jQuery pour du pur JavaScript dans la version 5.0 du framework HTML, CSS et JavaScript.
Le principal argument avancé pour justifier la suppression de jQuery dans Bootstrap v5 est que maintenant que plus de 95 % des fonctionnalités de jQuery sont désormais natives dans les navigateurs (les 5 % restants étant sans doute des bizarreries excessivement rétrocompatibles qui méritent d'être ignorées), donc ajouter une dépendance JS serait "stupide" ou un gaspillage de bande passante.
Dans la communauté des développeurs, les avis divergent quant à ce changement. Ceux qui l'ont bien accueilli reconnaissent que jQuery est l’une des bibliothèques les plus importantes de l’histoire JavaScript et a permis de créer de véritables applications Web. Ils estiment cependant que depuis lors, les différences entre les navigateurs se sont considérablement réduites et nous avons appris à créer des applications maintenables et évolutives de manière plus déclarative, grâce à des frameworks comme React, Angular et autres. Du coup, jQuery ne serait plus d'une grande utilité.
La suppression du moteur de sélection de jQuery parce qu'il existe maintenant des sélecteurs natifs dans les navigateurs modernes tend à donner raison à ceux qui pensent que jQuery est de moins en moins pertinent. En dépit de cela, d'autres estiment qu'il est intellectuellement malhonnête de prétendre que la bibliothèque JS est obsolète ou que toutes les techniques jQuery sont aujourd'hui aussi ergonomiques à mettre en œuvre sans utiliser jQuery. Pour eux, ça reste un outil très productif qui offre des solutions simples à de nombreux problèmes. jQuery est donc encore là pour très longtemps ?
Annonce de la sortie de jQuery 3.4.0
Et vous ?
jQuery est-il obsolète ou en voie d'obsolescence dans le paysage actuel du développement web ? Pourquoi ?
Quelles sont les forces et faiblesses de jQuery dans le développement web moderne ? À quel moment faut-il l'utiliser ou pas ?
Avez-vous migré de jQuery vers d'autres bibliothèques ou frameworks ? Avez-vous regretté jQuery ou pas ?
Voir aussi :
La version 5.0 du framework Bootstrap va supprimer jQuery, sa plus grande dépendance côté client pour du pur JavaScript
Quel est l'avenir de jQuery ? Juste servir de base pour la construction des frameworks de demain ?
jQuery 3.0 disponible en téléchargement, la nouvelle version de la bibliothèque JavaScript met fin au support des versions 6 à 8 d'Internet Explorer
Une vulnérabilité 0-day dans un plugin jQuery permettrait de télécharger et d'exécuter du code malveillant sur des serveurs PHP, et ce, depuis 2010
jQuery 3.2.0 : toujours en vie, voici des améliorations pour la célèbre bibliothèque JavaScript
jQuery 3.4.0 est disponible
La bibliothèque JavaScript est-elle toujours aussi utile et incontournable comme à ses débuts ?
jQuery 3.4.0 est disponible
La bibliothèque JavaScript est-elle toujours aussi utile et incontournable comme à ses débuts ?
Le , par Michael Guilloux
Une erreur dans cette actualité ? Signalez-nous-la !