Je ne dis à aucun moment que les autres frameworks sont mauvais.
J'explique pourquoi j'ai fait le choix de React.
Je ne dirais aucun contre-argument car ce n'est pas le but ici ! C'est à toi de les faire !
Je suis ouvert à toutes les library.
1. La communauté
Et oui… C'est mon argument principal.
Dans le sondage 2021.stateofjs.com/en-US/libraries on voit que React arrive largement devant en nombre d'utilisateurs et en satisfactions !
L'intérêt a baissé certes mais les deux valeurs principales sont au RDV
avoir beaucoup de gens qui utilisent et aiment une techno, ça sert à quoi ?
ça permet d'être sûr que votre projet va durer dans le temps
que la library sera maintenu
qu'elle sera encore utilisée et que tu trouveras du monde pour t'aider
Et react fait ses preuves depuis 2016 !
En tant qu'entreprise, c'est encore plus évident.
Tu veux encore une fois perdre le minimum de temps
Finalement niveau offre d'emploi Angular est le top 1 en général
Angular est un bon framework pour les entreprises car il est très strict
Sinon React vient juste après !
En conclusion, avoir une grosse communauté est un avantage considérable
Je t'ai prouvé que React était le plus populaire en 2022 et que la communauté était très active
Ainsi, beaucoup de vos problèmes seront déjà résolus
et que la library durera dans le temps
2. HTML-IN-JS
Le deuxième avantage est pour moi vraiment game changer en comparaison aux autres
Je suis fan du HTML in JS alias le JSX
ça offre vraiment des possibilités de fou avec un code d'une qualité impressionnante !
Déjà il permet d'avoir du code 100% check par js et pas par un linter
Car en html tu peux faire
<p>salut</div>
ça fonctionnera
En jsx t'es dans la sauce instantanément ! Tout crash et c'est logique car Babel ne va rien comprendre
Vue que JSX ça reste du JS dans tes props ou dans le contenu c'est ultra cohérent et logique !
Tu utilises du JS pour faire des changements dans ton code
Prenons l'exemple de faire une loop avec un de ces frameworks :
Tous les autres frameworks utilisent le HTML et donc des syntaxes custom :
En React non !
C'est uniquement du javascript : `.map`
Pas de syntaxe custom grâce au jsx !
PS, je sais en Vue, on peut aussi faire du JSX, mais ils expliquent que c'est pour des cas précis et pas dans la majorité ! fr.vuejs.org/v2/guide/compa…
Le JSX est pour moi formidable et c'est encore une fois un game changer dans mon choix !
3. Les hooks
La cerise sur le gâteau c'est les hooks React !
En fait la syntaxe je la trouve perso lisible et très simple en plus de t'offrir une liberté de dingue !
Évidement la liberté c'est aussi un défaut car il est beaucoup plus simple de faire des erreurs !
C'est pour ça que les entreprises choisissent Angular puisqu'il offre moins de liberté
Alors qu'en entreprise avec React et les hooks chacun peut faire les choses à sa manière !
Son grand avantage pour moi sans rentrer dans les détails c'est la réutilisabilité !
Les custom hooks sont un excellent moyen pour partager la logique entre différents composants.
C'est simplement une fonction qui utilise un / des hooks React et qui peut être appelée dans un composant exactement comme un hooks standard.
ça rend le code tellement beau si c'est bien utilisé !
Je ne vais pas rentrer dans les détails de chaque hooks mais les contexts sont très pratiques pour gérer les états globaux et permettent d'avoir un code très clair !
4. C'est backé par Facebook
Facebook sont les premiers à utiliser les nouvelles versions de React en prod
Angular a aussi Google
Mais Vue et Svelte n'ont pas cet aventage !
En tant qu'entreprise ou utilisateurs, c'est réconfortant de savoir que la library est sécurisée par une team payée et heureuse, puis surtout testé par un GAFAM quotidiennement !
Désolé de t'avoir fait migrer sur React !
Je rigole, en vrai, je m'en fou de ton choix ! Je voulais partager mon avis pour pouvoir le ressortir lors des débats !
On peut le comparer à une personne :
le content est le corps de la personne 🚶
le padding est l'espace entre son corps et ses vétement
la border sont les vétement
la margin est l'espace qu'elle a autour d'elle
Maintenant si je dis à une box qu'elle fait 100px de width et de height et qu'en plus elle a une margin de 10px rouge
Les favicons c'est le petit icon à côté de ton onglet sur les navigateurs
Génère tes favicons ultra rapidement avec ce site
Tu auras toutes les versions pour chaque taille d'écran
et il te donne le code snippet à c/c dans head
C'est super chiant à faire