web-dev-qa-db-fra.com

Quelles sont les principales différences entre Meteor, Ember.js et Backbone.js?

Apprendre Ember.js/Backbone.js est sur ma liste de choses à faire depuis un moment. Maintenant que Meteor est sorti, je me demande si quelqu'un ayant une expérience de Meteor, Ember.js et Backbone.js peut résumer les principales différences, avantages et inconvénients de ces trois frameworks JavaScript pour une personne sans expérience pour aucun d'entre eux.

En particulier, j'aimerais savoir à quelles tâches chaque cadre correspond le mieux et pourquoi les autres ne le sont pas.

Edit: maintenant que je lis un peu plus sur Meteor, il semble que cela ressemble plus à Knockout.js qu'à Backbone.js. Toute comparaison avec Knockout.js est donc la bienvenue.

246
K Z

Il y a une bonne comparaison des différents frameworks MVx JS ici http://codebrief.com/2012/01/the-top-10-javascript-mvc-frameworks-reviewed/ il est suivi par une bonne discussion dans les commentaires aussi. Je pense avoir vu Gordon (qui l'a écrit) ici, alors peut-être aurez-vous une réponse de sa part.

Je dirais que si vous souhaitez apprendre ce style de développement d’applications, d’une part, la richesse des exemples de dorsales open source pourrait être bénéfique pour vous. Par contre, bien que nouveau, le package Ember est en réalité plus complet que le backbone.

Les deux vous donnent la possibilité d’implémenter des choses de différentes façons, ce qui peut prêter à confusion, mais Ember fournit davantage de code que vous auriez à écrire vous-même dans dorsal en tant que norme, ce qui est plus important pour moi personnellement. prototypage rapide que la richesse des exemples de colonne vertébrale disponibles.

Il existe des plugins plus matures pour la persistance des données sur le réseau de base, mais la communauté suscite beaucoup d'enthousiasme autour de Ember et de nombreuses bibliothèques contrib contribuent à faire de grands progrès. J'ai été agréablement surpris par la rapidité avec laquelle moi (et d'autres) avons eu des réponses de qualité pour un framework relativement nouveau, ici, sur Stack Overflow.

Lorsque vous dites météore, vous parlez de tout à fait autre chose. Si vous voulez faire plus avec la réutilisation du code côté client et côté serveur, jetez un coup d'œil au mojito yahoo récemment ouvert et à la source https://github.com/yahoo/mojito exécuté sur node.js - Je me suis amusé avec ça la semaine dernière, et si vous vous familiarisez avec Backbone/ember ou l'un des autres c'est un jeu d'enfant à comprendre.

Je devrais également dire que Knockout.js est utilisé sur certains systèmes de production mais que je ne l’ai jamais utilisé pour une "application" à part entière. Je l'ai relié à une interface de mongo pour explorer en détail les journaux de pagination enregistrés dans mongo. J'aime beaucoup ça, mais je ne me sentirais pas à l'aise de construire quoi que ce soit de trop gros.

Eh bien, c'est un peu difficile, n'est-ce pas :)

Plutôt content d'en parler plus à quiconque est intéressé. J'ai utilisé un certain nombre de ces cadres dans la colère et la production (y compris des éléments qui ne figurent pas dans l'article "Top 10") et les personnes au travail en ont marre de m'entendre parler de JS. Je pense :-D

161
joevallender