Le framework JavaScript met les pages Web au régime

Svelte, créé par un éditeur graphique du New York Times, a attiré l'attention des programmeurs qui souhaitent que leurs pages se chargent plus rapidement.


Les sites web sont trop lourds.

La page web moyenne est d'environ 2 mégaoctets, selon Http Archive, un site qui suit les performances des sites web et les technologies qu'ils utilisent. Il est certain que vous pouvez télécharger 2 mégaoctets en moins d'une seconde sur une bonne connexion mobile 4G. Mais les pages web d'aujourd'hui sont problématiques pour les personnes ayant une connexion lente ou une faible bande passante. Il n'y a pas si longtemps, un jeu ou un logiciel complexe tenait sur une disquette de 1,4 mégaoctet.
Il y a de nombreuses raisons pour lesquelles le web d'aujourd'hui est si gonflé, notamment les publicités et les scripts de suivi qui sillonnent tant de pages. Une autre raison est que les sites web font bien plus qu'afficher du texte et des images. De nombreux sites ressemblent aujourd'hui à des applications de bureau à part entière.
Pour construire ces sites interactifs, de nombreux développeurs web se tournent vers des progiciels à code source ouvert qui prennent en charge les tâches courantes. Ces outils libèrent les programmeurs de beaucoup de travail fastidieux, mais peuvent ajouter du poids à un projet. La populaire bibliothèque open source React de Facebook, qui permet de créer des interfaces utilisateur, pèse par exemple 100 kilo-octets. Ajoutez à cela d'autres outils et des graphiques, et vous obtenez bientôt de nombreux mégaoctets.
Le futur framework JavaScript Svelte, créé par le journaliste visuel et développeur de logiciels Rich Harris, vise à faciliter la création de sites web et d'applications interactives plus rapides et plus petits. Le développeur web Shawn Wang dit avoir réduit la taille de son site web personnel de 187 kilo-octets à 9 kilo-octets en passant de React à Svelte.
"C'était un grand moment d'émerveillement", déclare Wang. "Je n'ai même pas essayé d'optimiser la taille et elle a juste baissé.
Harris, un éditeur graphique du New York Times, a créé et publié la première version de Svelte en 2016 alors qu'il travaillait pour le Guardian. Beaucoup de ses projets impliquaient des graphiques et des animations interactives, mais il craignait que les graphiques ne prennent trop de temps à charger ou ne dépassent les limites de données des utilisateurs.
Les cadres ajoutent du poids aux sites web car ils servent traditionnellement de couche intermédiaire entre le code d'une application et le navigateur de l'utilisateur. Cela signifie que les développeurs doivent regrouper l'ensemble du cadre, en plus de leur propre code, avec une application, même s'ils n'utilisent pas toutes les fonctionnalités du cadre. Wang compare cela à un vaisseau-fusée qui a besoin d'énormes réservoirs de carburant pour être lancé dans l'espace.
Harris a adopté une approche différente. Svelte effectue son travail de couche intermédiaire avant qu'un développeur ne télécharge le code sur un serveur web, bien avant qu'un utilisateur ne le télécharge. Cela permet de supprimer les fonctionnalités inutiles, ce qui réduit la taille de l'application résultante. Cela permet également de réduire le nombre de pièces mobiles lorsqu'un utilisateur exécute l'application, ce qui peut rendre les applications Svelte plus rapides et plus efficaces. "Svelte est comme un ascenseur spatial", déclare Wang. Le cadre a été difficile à créer, mais ses partisans affirment qu'il permet aux développeurs de créer plus facilement des applications efficaces.

Une alternative qui intéresse les développeurs

Wang dit qu'il aime utiliser la solution Svelte pour les pages web, mais qu'il utilise toujours React pour des applications plus importantes, notamment pour son travail professionnel. D'une part, plus une application est grande, plus il est probable qu'un développeur utilisera toutes les fonctionnalités de React. Cela permet de réduire le gaspillage. En fait, certaines applications Svelte sont plus volumineuses que les applications réalisées avec React ou des outils similaires. Et la demande de développeurs React est beaucoup plus importante que celle des développeurs Svelte.
Dans l'enquête "State of JavaScript 2019" menée auprès de plus de 21 000 développeurs, 88 % des personnes interrogées ayant utilisé Svelte se sont déclarées satisfaites de ce dernier, lui donnant la deuxième note de satisfaction la plus élevée de l'enquête, juste derrière le taux de satisfaction de 89 % de React. Mais seulement 7,8 % des personnes interrogées avaient utilisé Svelte, et 24,7 % n'en avaient jamais entendu parler. Par ailleurs, 80,3 % des personnes interrogées avaient utilisé React.
Harris comprend pourquoi de nombreux développeurs hésiteraient à investir dans l'apprentissage de Svelte. Le monde du développement JavaScript évolue rapidement, et les programmeurs disposent déjà d'un nombre étourdissant d'outils pour choisir et apprendre. "React a l'avantage d'être soutenu par Facebook, un marché de l'emploi solide et un énorme écosystème de choses tierces qui fonctionnent avec lui", dit-il. Bien que Harris utilise Svelte pour réaliser des graphiques et des animations pour le New York Times, le site de l'éditeur est toujours basé sur React.
Svelte est toujours un projet de loisir sur lequel Harris et d'autres développeurs travaillent principalement pendant leur temps libre. Harris n'y travaille "on the clock" que lorsqu'il a besoin de réparer quelque chose ou d'ajouter une fonctionnalité qui l'aide dans son travail pour le Times.
Selon Harris, Svelte est le mieux adapté aux cas où les performances et la taille des fichiers sont particulièrement importantes, comme les applications qui fonctionnent sur des téléviseurs intelligents ou des appareils à faible consommation d'énergie.
Mais certains développeurs de Svelte l'utilisent pour créer des applications plus importantes. Ryan Atkinson est le fondateur de Felt Social, qui fabrique des outils pour la création de sites web sociaux hautement personnalisables. Il dit avoir choisi Svelte parce qu'il permet de créer des applications plus rapides et plus réactives, même si elles ne sont pas toujours les plus petites. "L'architecture de Svelte peut changer fondamentalement le jeu de la construction d'interfaces utilisateur", dit-il.
Selon M. Atkinson, les programmeurs rejettent souvent les outils qui sont bons pour construire de petites choses, pensant qu'il s'agit de "jouets" qui ne peuvent pas être utilisés pour construire de grandes choses.
"Je pense que c'est une erreur", dit-il. Après tout, souligne-t-il, JavaScript était autrefois considéré comme un "langage de jouet". Il est maintenant utilisé pour écrire des applications comme Gmail et Google Docs.

Date de création : 2020-04-06
Auteur :

0 Avis

Pas encore d'avis.

Déposer un avis

CGU - Gralon - Confidentialité
Accéder au site complet
© Gralon 2011-2024