Une application web moderne sans bundling ni transpilation JS
(world.hey.com)-
Le point de vue de DHH, développeur Ruby on Rails : "L’avenir de JavaScript, c’est ES6/HTTP2/Import maps"
-
Pas de transpileur : maintenant qu’ES6 est pris en charge par tous les navigateurs, les transpileurs ne sont plus nécessaires
-
Pas de bundler : avec HTTP2 devenu le standard, il n’est plus nécessaire de regrouper de petits fichiers en un seul
-
Import maps : le changement le plus important
→ pour les modules ES6, on peut utiliser des références logiques plutôt que des références de fichiers
→ au lieu d’ajouter un hash au nom du fichier et de le renommer à chaque modification, il suffit de mettre à jour la map qui relie le module et le nom du fichier
→ déjà pris en charge dans Chrome et Edge ; Firefox l’étudie aussi, et même s’il n’y a pas de nouvelles côté Safari, il existe déjà un excellent shim
→ la gestion manuelle des import maps demande encore du travail, mais Rails propose déjà la gem importmap-rails
-
La combinaison de ces trois éléments permet de mettre en place un environnement de développement local sans même installer Node
-
Ce setup est déjà appliqué à Stimulus et Turbo pour Hotwire
-
Bien sûr, il existe encore des applications qui ont besoin de Webpack, mais les choses évoluent progressivement
2 commentaires
Je pense que l’orientation de DHH, qui consiste à garder le développement web simple, est la bonne.
De nos jours, on essaie presque par réflexe d’ajouter un frontend à tout ce qu’on construit, et j’ai des doutes sur cette tendance.
Ces import maps pourraient bien être le point de départ d'une nouvelle série de galères....