Coucou Vue.js (Bye React, Bye Angular)

Alexandre Grisey
5 min readJun 1, 2019

--

Allez, on repart sur un article tech ! Et ça sera sur un comparatif des actuels gros frameworks JS. Alors oui, je sais, il y a déjà moult comparatifs de ce genre partout sur le web, mais je tiens juste à donner mon avis en tant que dév.

Ces dernières années, j’ai dû jouer avec React et Angular. Et je me suis mis récemment à faire du Vue.js en perso, j’ai donc assez de recul et d’expérience pour donner mon humble avis, alors c’est parti !

Petit historique

Avant que je donne mon avis, petit retour sur l’historique des frameworks histoire de les introduire.

Angular, développé par Google, est le plus ancien des frameworks. Au début connu sous le nom d’AngularJS, il perd ses deux derniers caractères (avouez, c’est relou de voir des ‘.js’ partout, non ?) et devient Angular 2 en 2016. Lorsque je parlerai d’Angular ici, ça sera pour désigner Angular 2+.

React, développé par Facebook depuis 2013. C’est actuellement le framework le plus utilisé, et Facebook utilise React (et React Native, sa version le pour le dev mobile) pour tout ses produits (Facebook, Instagram, …).

Vue.js, c’est le dernier né. Il n’est pas supporté par un grand groupe, mais il a été créé par un ancien employé de Google, qui bossait sur Angular.

Popularité

Toujours avant que je donne mon avis, parlons un peu de la popularité des frameworks

Difficile de mesurer la popularité d’un framework. Si on veut parler en popularité brut auprès des développeurs (et seulement des développeurs !), le nombre de stars sur GitHub nous donne une idée. A l’heure où j’écris ces lignes, les nombres sont les suivants :

  • 47,983 pour Angular
  • 128,926 pour React
  • 138,338 pour Vue.js

Les chiffres parlent d’eux-mêmes. Mais attention, ce ne sont que des chiffres. En tant que freelance, ce que je constate, c’est que la majorité des demandes sont toujours sur du React, bien que de plus en plus de projets démarrent avec du Vue. À suivre.

Mon avis

Allez, je vais donner mon avis sur chacun des frameworks et expliquer pourquoi Vue.js est mon petit préféré.

React

React est le premier framework que j’ai utilisé. J’apprécie beaucoup sa “liberté” d’implémentation et le nombre de modules disponibles partout sur le web. Il y a une forte communauté derrière et c’est plutôt cool. Si vous voulez faire du dev sympa sans prendre de risques, c’est parfait.

En revanche, j’aime beaucoup moins sa façon de gérer des fonctionnalités pourtant essentielles : le routing, le store (redux est quand même vachement relou à appréhender au tout début — bien que ça ne soit pas la seule solution). React, à l’inverse des deux autres, n’utilise pas de two-way binding, et je trouve ça fort dommage. Il demande une bonne organisation, sinon ça devient vite le bordel.

Angular

Angular est le deuxième framework que j’ai utilisé. Je suis rapidement tombé amoureux de sa façon de gérer ses templates (avec des directives intégrées aux tags HTML). Angular utilise nativement le TypeScript, et moi j’aime le TypeScript ❤.

En revanche, je trouve Angular beaucoup trop rigide. Sans déconner, on dirait qu’il est sous Viagra. Certains y verront une force, moi j’y vois une contrainte. Sa façon de gérer tout ses composants natifs en font un framework très complet, trop complet pour moi. Angular est en perte de vitesse sur le marché du travail, c’est aussi à prendre en compte.

Vue.js

J’ai commencé à utilisé Vue.js assez récemment, pour du perso, car j’en entendais beaucoup de bien. Et à raison.

La courbe d’apprentissage a été pour moi très, très rapide, et j’ai été capable de refaire mon site perso (clique ici… allez clique !) très rapidement sans m’énerver, ni devoir passer des heures en scrollant dans les threads Stackoverflow. Très bonne surprise donc.

Je trouve que Vue.js regroupe le meilleur de chaque framework : la liberté de React, le système de template HTML et le two-way data binding d’Angular. La gestion des routes est ultra simple, tout comme celle du store.

Donc je kiffe ❤

Attention, je mets un bémol ici : je n’ai pas utilisé Vue de manière aussi prolongée et professionnelle que les deux autres loustics, donc à voir sur la durée.

Développement mobile

En tant que développeur mobile, je m’intéresse forcément à ce qui est possible de faire avec les frameworks JS. Et là, bonne surprise, chacun des trois cousins est utilisable pour faire des apps. Dans les trois cas, on peut faire des PWA sans problème (même si jamais essayé). Mais aussi :

  • React a bien évidemment React Native, qu’on ne présente plus. Très proche de React (sans déconner), ce framework mobile permet de créer des applications natives en JavaScript.
  • Angular est utilisé par Ionic sur ses versions 2 et 3 pour créer des applications hybrides. Et ça marche plutôt bien.
  • Vue.js peut-être utilisé avec Native Script (de même qu’Angular) pour développer des applications natives de la même façon que React Native. Alors là par contre, contrairement aux deux autres, je n’ai aucune expérience avec Native Script. Donc déso, à vous de faire vos recherches.

Si vous vous intéressez aux différents frameworks mobiles JS, vous pouvez toujours lire mon article qui y est consacré.

Conclusion

Il y a plusieurs types de pizza que j’aime. Parmi mes préférées, on pourrait citer la pizza au saumon et la pizza 4 fromages. Bah Vue.js, pour moi c’est une pizza au saumon 4 fromages.

PS : Je sais que ça va emmerder les puristes, mais je sais pertinemment que j’utilise le mot framework à tort et à travers dans cet article, c’est volontaire, question de simplification des termes.

Vous voulez devenir développeur freelance vous aussi ? Inscrivez vous à la mailing list et recevez gratuitement des conseils :

Vos données sont sécurisées et vous pourrez vous désinscrire à tout moment 😉

Je propose aussi des formations pour les développeurs freelance, et ça se passe ici !

--

--