学习Ember.js / Backbone.js已经在我的待办事项列表上有一段时间了。现在Meteor出来了,我只是想知道任何一个有Meteor, Ember.js和Backbone.js经验的人是否可以为一个没有任何经验的人总结这三个JavaScript框架的主要区别和优缺点。

具体来说,我想知道每个框架更适合于哪些任务,为什么其他框架不适合。

编辑:现在我在Meteor上读了一点,它似乎更类似Knockout.js而不是Backbone.js。因此,与Knockout.js进行比较也是受欢迎的。


这里有一个很好的MVx JS框架的运行/比较 http://codebrief.com/2012/01/the-top-10-javascript-mvc-frameworks-reviewed/ 评论中也有很好的讨论。我想我在这里看到了戈登(他写的),所以也许你会从他那里得到回复。

我想说,如果你想学习这种类型的应用程序开发,那么一方面,大量的开源主干示例可能对你有好处。但另一方面,虽然是新的,烬包实际上是更完整的IMO比骨干。

两者都让你能够以各种可能令人困惑的方式实现东西,但是Ember提供了更多的代码,你必须自己在骨干中编写作为标准,对我个人来说,这对于快速原型构建比可用的骨干示例财富更重要。

对于骨干网的数据持久性,有更成熟的插件,但是围绕Ember有一个很大的社区讨论,许多贡献库正在取得很大的进展。对于Stack Overflow上一个相对较新的框架,我(和其他人)得到了高质量的响应,这让我感到惊喜。

当你说流星的时候,我们说的是完全不同的东西。如果你想在客户端和服务器端做更多的代码重用,那么看看最近在node.js上运行的开源yahoo mojito https://github.com/yahoo/mojito -我在上周一直在摆弄它,如果你熟悉backbone/ember或其他任何一个,它是一个可以掌握的snap。

我还应该说,我在一些生产系统上使用Knockout.js,但从未将其用于完全成熟的“应用程序”。我已经把它连接到一个mongo接口,用于向下钻取和分页存储在mongo中的日志。我真的很喜欢它,但在里面盖太大的东西会让我觉得不舒服。

嗯,这有点漫谈了,不是吗?

我很乐意和任何感兴趣的人多谈谈。我在《愤怒》/《制作》中使用了许多这样的框架(包括“前10名”文章中没有列出的内容),工作中的人已经厌倦了听我谈论JS:-D