Quel framework devriez-vous utiliser ? Eh bien, cela dépend de ce que vous développez et de votre priorité. Mais j'ai créé un outil de comparaison rapide pour vous aider à trouver la pile parfaite pour votre projet. Voir : Correspondance de pile.
Vous voulez juste les chiffres ? J'ai également créé la même application en utilisant 10 frameworks différents et les ai comparés. Voir le dépôt framework-benchmarks pour la source et les résultats.
Pourquoi est-ce que j'écris ceci ? Eh bien, je vois beaucoup d'articles qui développent des frameworks spécifiques ou qui proposent d'autres frameworks. Mais il est rare que l’auteur aille à l’encontre du battage médiatique et fournisse une comparaison impartiale entre toutes* les options.
Mon objectif ici est de décrire brièvement chaque framework USP, quand vous devez les utiliser, en couvrant leurs avantages et inconvénients et également de mentionner mes réflexions.
En parlant d'impartialité, je dois créer la même application dans chaque framework pour en faire un test équitable (ce que j'ai fait !). Mais c’est le premier problème, car les applications simples ne démontrent pas pleinement les capacités d’un framework dans des scénarios réels. En tant que tel, j'ai également inclus des projets réels/en direct que j'ai construits avec chacun. Tous ces éléments sont prêts pour la production, avec un nombre décent d'utilisateurs actifs et/ou de téléchargements (en fait, un million d'utilisateurs annuels combinés et 50 000 étoiles github).
Puisqu'il existe littéralement des centaines de frameworks frontend, donc pour garder cet article raisonnablement, je vais seulement aborder le "top" 10 les plus récents et les meilleurs, et nous nous concentrons principalement sur l'expérience des développeurs (mais des tests de performances seront également inclus).
Assez discuté, allons-y !
React est partout, alimentant plus de 1,3 million de sites Web et utilisé par de nombreuses grandes entreprises (probablement la plupart). Il existe depuis plus de 12 ans, soutenu par Meta, avec des outils très matures et un vaste écosystème. Il n’est donc pas étonnant que ce soit devenu le choix par défaut de nombreuses équipes. Il est très stable avec une excellente rétrocompatibilité (ce qui est aussi l'un de ses pièges, car il existe plusieurs façons de tout faire).
Mais ce n'est pas parfait. Il ajoute beaucoup de passe-partout, ce qui le rend beaucoup plus verbeux à écrire que Svelte ou Vue. Le DOM virtuel ajoute également une surcharge de performances assez importante (en fait, juste la réconciliation, mais il est facile à utiliser de manière incorrecte), la mémorisation est souvent manuelle, les fonctionnalités concurrentes ne sont pas encore très matures et les bundles ont tendance à être volumineux, même avec beaucoup de secousses dans les arbres.
Si vous codez des vibrations, React présente un énorme avantage, car il y a tellement de code que les IA peuvent consommer. De même, si vous recherchez un emploi, vous ne pouvez pas vous tromper en apprenant React, car c'est le framework dominant pour la plupart des entreprises depuis un certain temps déjà.
Cela dit, personnellement, je n'aime pas React : c'est lent, lourd,...
[Courte citation de 8% de l'article original]