
pour du pur JavaScript
Bootstrap n'est plus à présenter aux développeurs Web, car c'est sans doute le framework HTML, CSS et JavaScript le plus populaire pour développer des projets mobiles first et responsives sur le Web. Il offre des outils utiles à la création du design de sites et d'applications Web. C'est un ensemble qui contient des codes HTML et CSS, des formulaires, boutons, outils de navigation et autres éléments interactifs, ainsi que des extensions JavaScript en option. La dernière version majeure, Bootstrap 4.0 a été publiée en janvier 2018, après plus de trois 3 ans de développement et une réécriture majeure de l'ensemble du projet. Elle a donc introduit des changements incompatibles que les développeurs devraient prendre en compte dans leurs projets.
Plus d'un an après la version 4.0, des versions mineures ont été livrées. La dernière, Bootstrap 4.3, date du 11 février. Bootstrap v4.3 vient avec des améliorations aux utilitaires du framework, des corrections de bogues, mais surtout des tailles de polices responsives. Un nouveau projet Bootstrap permet en effet d’automatiser le calcul d’une taille de police appropriée en fonction des dimensions du périphérique du visiteur ou de la fenêtre du navigateur.
Mais juste après la livraison de la v4.3, l'équipe Bootstrap a décidé d'aborder quelques changements clés à venir dans la version v5. À la Une, elle annonce l'abandon de jQuery pour du pur JavaScript. « Le chat est sorti du sac - nous abandonnons notre plus grande dépendance côté client pour du JavaScript pur. Nous y travaillons depuis longtemps et un pull request est en cours et presque terminé », a affirmé l'équipe Bootstrap.
Il s'agit d'un énorme pull request avec des centaines de commentaires étalés sur un an et demi. Selon les commentaires, jQuery a été remplacé par du pur JavaScript (également désigné par le nom Vanilla JS) qui appelle directement les API du navigateur. S'il est souvent désigné comme étant un framework, Vanilla JS ne l'est pas vraiment, c'est du JavaScript sans bibliothèque.
Le concept Vanilla JS a été popularisé fin 2012, avec pour objectif de contrecarrer l’omniprésence des bibliothèques JS comme jQuery. Si vous avez déjà effectué une recherche sur un moteur de recherche suite à une question ou à un problème en codant en JavaScript, vous vous êtes peut-être rendu compte que jQuery et d’autres étaient omniprésents et toujours présentés comme la solution, même sur des questions génériques. C'est pour lutter contre cela que le concept Vanilla JS a été mis en avant. Il vante les mérites de JavaScript. Plutôt que d’utiliser une bibliothèque en surcouche, on peut en effet trouver une solution équivalente qui utilise les fonctions du core JavaScript.

L'argument général 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. Pour certains, c'est une bonne nouvelle. Cela pourra rendre Bootstrap plus attractif et compétitif en tant que framework. Ils reconnaissent que jQuery était l’un des frameworks (bibliothèques) les plus importants de l’histoire JavaScript et il a permis de créer de véritables applications Web. Cependant, 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é. Ils avancent également que c'est généralement bien de pouvoir éliminer une dépendance pour des fonctionnalités natives.
Les autres, par contre, ne comprennent pas pourquoi l'équipe Bootstrap s'est donné tant de mal pour supprimer jQuery. L'API est incompatible, et si vous parcourez les commentaires du pull request, vous allez constater que de nombreux problèmes spécifiques aux navigateurs sont en cours de résolution. Le support d'Internet Explorer a quant à lui été abandonné. Autrement dit, la suppression de jQuery "a tout cassé". Ils estiment aussi que jQuery fait beaucoup de choses utiles et reste un projet intéressant. Il ne devrait pas être utilisé pour tout, mais passer du temps à le supprimer simplement parce que ce n’est plus le framework à la mode semble être une perte de temps.
Enfin, si Bootstrap va supprimer jQuery en tant que dépendance, ses développeurs prévoient d'offrir aux utilisateurs qui en besoin un moyen de l'utiliser.
Sources : Annonce Bootstrap 4.3, Pull request Github (Bootstrap v5 sans jQuery)
Et vous ?



Voir aussi :




Vous avez lu gratuitement 1 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.