Web 开发者可以使用诸如 Backbone 及 Knockout 等客户端库去更好地组织他们的客户端代码,并提供更丰富的客户端体验。我们指出了一些资源。
与主要关注 DOM 操作的 JQuery 不同,Backbone.js 及 Knockout.js 则关注在你的代码中实现关注点分离,例如从用户界面元素中将你的数据模型分离出来。 Backbone.js 帮助你创建像 MVC 一样的结构,并提供 REST 风格的持久性。模型允许从视图中分离数据,而路由器为客户端页面之间的路由提供了便利。另一方面, Knockout.js 关注的是声明式绑定(与 XAML 绑定类似),即将你的模型绑定至 HTML 元素,并保持依赖项跟踪——这样就可以使用 MVVM 风格的方法。然而,两个库都允许遵循其他的 MV* 模式。
一些有助于你入门的资源——
- Steve Sanders 所作的 20 分钟的 Knockout 演讲
- Knockout 教程
- Backbone 教程
- 用 Backbone.js 及 ASP.NET Web API 一起开发的单页应用程序(SPA)示例
- (与 ASP.NET 一起使用时)针对 backbone 的一些提示及陷阱
- 几个免费的 Pluralsight 课程,适用于 knockout.js 与 ASP.NET 一起开发
这些绝对不意味着那些是唯一可用的库 / 框架——还有一些其他的库 / 框架,其中一些已在本月初的一次InfoQ 调查中有所涉及。Steve 还罗列了适用于胖客户端应用程序的 8 个一流 JS 框架,同时做了有趣的比较,并洞悉了那些项目的未来发展方向。
ASP.NET 团队也正在研发 ASP.NET 单页面应用程序(SPA),此功能本应与 MVC 4 一起发布,不过未能完成。目前仍是预览版。
评论