Javascript框架:Knockout,backbone,ember ......

时间:2012-05-31 07:49:02

标签: javascript backbone.js knockout.js ember.js

我目前正在使用带有node.js和Express服务器端的javascript编写的Web应用程序项目,现在是时候考虑此应用程序的客户端了。这两个问题是:

  • 我应该考虑使用框架还是可以在没有这样的工具的情况下编写它?
  • 如果没有,哪个框架?

我选择了其中三个:骨干,淘汰赛和Ember。我读了所有关于他们的问题,但我还在犹豫。要考虑的要点是:

  • 将html和javascript混合起来很好吗?
  • 我的申请是否易于维护?
  • 框架是否会继续而不是明天,这让我处于一种非常不舒服的状态?

编辑:您如何看待JavaScriptMVC?

3 个答案:

答案 0 :(得分:4)

正如@Christian Varga在评论中所说,这取决于。但是,我会提出以下意见:

  

将html与淘汰赛这样的javascript混合好吗?

使用淘汰赛你不会被迫将javascript混合到html中。请参阅Unobstrusive Event Handling

  

我的申请是否易于维护?

根据我的淘汰经验,如果应用程序变得特别大,那么页面确实变得复杂。但是,如果您要使用SPA样式页面,那么代码将始终相关。我没有使用Ember或Backbone,但Backbone确实因为对大型应用程序有好处而享有声誉。

  

这个框架会继续吗,而不是明天会留下来,让我留在一个   非常不舒服的情况?

我认为你已经选择了三个框架进行明智的考虑。 Knockout和Backbone都有相当广泛的采用。淘汰赛将是shipped with MVC4,这将为你的未来提供一些信心。 Ember比较新,但背后似乎有很多兴奋。对Ember有一个很好的讨论,有各种对knockout和backbone here

的引用

希望这可以帮助您评估最适合您项目的内容。

答案 1 :(得分:0)

所有这些都是很好的框架。你可以选择任何人,你不会犯错误。当然,你可能最喜欢一个,但这是一个品味问题。所有这些框架都将使您的应用程序易于维护。

现在,我想添加更多内容。你问“我应该考虑使用框架”吗?你可以建立自己的东西,这很酷。我建议你记住你项目的良好组织。在我短暂的经历中,Js是一团糟。这些FW可以帮助您保持代码的清洁和整洁。

要添加到组织中还有一件事:你应该考虑一些AMD工具,比如Require.js

答案 2 :(得分:0)

如果您正在考虑构建具有可伸缩性和可维护性的应用程序,则可能需要考虑Boilerplatejs等参考体系结构。

BoilerplateJS结合了构建大规模应用程序时使用的最佳实践。此外,它附带了诸如knockoutjs之类的库以及有助于构建和组织代码的实用程序。