Vue.js vs React vs Angular vs les autres MVVM

Vue.js est un framework JavaScript client progressif permettant de créer, maintenir et évoluer des interfaces utilisateurs en liant les données utilisées entre la Vue et le Model. C'est une alternative sérieuse à React, Angular et les autres frameworks MVVM (Modèle Vue VueModèle).

Vue.js

J'ai eut l'occasion d'essayer Vue.js dans sa version 1 et son extrême simplicité et flexibilité m'a séduite. À l’instar de NodeAtlas, sa puissance vient de ses fonctionnalités intégrables de manière évolutives et versatiles ; on peut tout aussi bien utiliser Vue simplement sur le formulaire d'une page ou à plus grande échelle avec des composants et du routage à travers l'architecture d'un site complet.

Cependant, là où en version 1, Vue paraissait une alternative séduisante à AngularJS (aka Angular 1) ou Knockout, dans sa version 2 il devient de plus une alternative sérieuse à Angular (aka Angular 2), React et les autres frameworks MVVM tant sur le plan des fonctionnalités que des performances.

Pour faire simple —si vous débarquez dans le monde des framework JavaScript client MVVM et que vous ne savez pas quoi choisir— vous devriez choisir Vue ! Quoi qu'il arrive, il sera un choix pertinent pour les cas d'utilisation que vous en ferrez.

Nous allons dans cet article :

  1. rapidement exposer pourquoi vous devriez utiliser Vue en lieu et place de Angular ou React dès maintenant et
  2. lire la traduction des explications approfondies à propos des différences entre Vue et les autres frameworks.

tl;dr - Pourquoi Vue.js ?

Rapidement, Vue version 2 c'est de :

  • la Performance : un DOM virtuel comme React pour augmenter sa réactivité à un taux de performance inégalable.
  • la Versatilité : une manipulation des Vues avec des directives
    • comme AngularJS compatibles avec une utilisation de templates directement basé sur le DOM réel ou sur une représentation en chaines de caractères JavaScript du DOM réel.
    • comme React directement via la manipulation d'objet JavaScript de DOM virtuel ou même avec JSX.
  • la Simpliticé : une utilisation simple et indépendante comme c'est le cas pour AngularJS ou Knockout.
  • la Robustesse : une utilisation complexe et structuré comme c'est le cas pour Angular ou React.
  • l'Évolutivité : une compatibilité entre version 1 et version 2 très proche là où AngularJS vs Angular sont difficilement compatibles.
  • la Complémentarité : un modèle de gestion des états à l’instar des couples React / Redux nous avons Vue / Vuex.
  • la Mobilité : Un activateur de rendu de code mobile natif sur iOS et Android pour Vue avec Weex ou NativeScript Vue comme [React Native] l'est pour React.
  • la Maintenabilité : Vue vient avec des outils lui permettant, entre autre, d'être déboguer, de créer des squelettes de site tout près, etc. comme React ou Angular.

Vue.js : comparaison avec les autres Frameworks

Je vous laisse profiter de la traduction française du très intéressant billet de Vue concernant Vue comparer aux autres Frameworks JavaScript MVVM.

Vue : Comparaison avec les autres Frameworks