3

过去几年我一直在 Flex 工作。在此之前,我一直在用 vanilla JavaScript 构建 Web 应用程序。

今天我切换回 JavaScript,但现在我在为一个新的中型项目选择正确的 JS 框架/库时遇到了麻烦。

尽管关于 AngularJS 的所有评论都是积极的,但我发现开始使用它并不是一件容易的事。问题当然是文档。尽管有教程向您展示了如何做基本的事情,但没有一个解释这些概念或向您展示如何构建更大的项目。

在发现 AngularJS 之前,我的想法是在 Backbone。积极的一面是,有大量关于该主题的文档、教程、截屏视频和书籍。此外,源代码很小,本身可以用作参考(与 AngularJS 不同)。

所以现在我认为对于那些在 JS 编程中使用框架而不是 AngularJS 的人来说,Backbone 可能是一个更好的选择。后来,当我设法训练我的大脑用 JS 思考时,AngularJS 可能更容易理解 + 会有更多可用的文档。

我现在怀疑这是否是正确的选择......

4

2 回答 2

5

首先,我很确定切换到 JavaScript 是正确的选择。

选择 JavaScript MVC 框架确实是一个艰难的选择,尤其是因为它们像爆米花一样到处爆开!

这个项目可能对这个决定非常有帮助:http: //addyosmani.github.com/todomvc/

这是我的观点。骨干是自由主义的。它不强加刚性结构。它更像是一组约定而不是实际代码。您肯定会使用的不仅仅是 Backbone 框架。这可能具有挑战性,但可能会产生更好的调整结果。Backbone 天生具有很强的可扩展性,这是一个很大的优势。

AngularJS 增强了 HTML 语义。只要这么说,您就可以想象它比“纯”主干要复杂得多。也许我们可能会发现 AngularJS 更神奇(当然不是神奇,但是用更少的代码发生的事情,“在引擎盖下”,我的意思是)。

他们对这个问题有非常不同的方法。我不会在这里陈述每个优点和缺点。我发布的链接应该可以帮助你。我也像你一样感到困惑,但简而言之,调查两者,用两者进行一些峰值实现,并检查 todoMVC 项目。选择更适合您的要求甚至个性的。:)

更公平的比较可能是“Backbone and friends”与“AngularJS”。不要忘记 Backbone 的朋友(插件和模块)。

你可以用两者做伟大的事情。

于 2013-01-15T11:23:03.190 回答
2

过去几天我去过那里。我在两个框架中都通过 REST api 实现了一个简单的 CRUD。以下是我的想法:

Angular 更难,因为它是约定优于配置、指令等新概念,您需要考虑扩展 HTML 而不是 javascript hack(这对于 flex 从业者来说并不难)。

但最后我更喜欢它,因为它不仅仅是开箱即用的骨干。你不需要写 jquery 的东西。模板比使用 Backbone 和下划线模板更具可读性。代码更少(更易于维护),我喜欢使用组件方法来构建客户端代码的方式。

于 2013-01-15T11:24:51.427 回答