情况背景

使用 Backbone 开发 Web App 之后,特别是较大型的项目,会发现因为缺少一些关键的功能(如:双向绑定等)代码越来越多且复杂,从而导致后期扩展和更新越来越困难,因此从基本框架层面需要考虑改善,以便使整个框架更有条理,更易组织,更易扩展、复用、重构等……

目前可以想到的有三个方向:

  1. 在 Backbone 基础上结合如下一些增强框架实现双向绑定、易用的模板等机制,从而带来整个框架底层的改善。

    • Marionette Backbone.Marionette 组合应用库,用于简化大型 Javascript 应用。
    • TroraxJS 将 Backbone 和 Handlebars 结合的框架,适合大型可扩展的 Web 应用。
    • RivetsJS 轻量强大的数据模板绑定的解决方案,可与 Backbone 等合用。
    • ChaplinJS 可与 Backbone 结合使用,也可以与Exoskeleton(可替代 Backbone 系列,仅 8k) 结合使用。
    • Backbone.stickit Backbone的一个双向绑定插件。
    • Backbone.databinding npmjs 开发的双向绑定插件。
    • PubNub 可在整个应用及所有客户端上同步Model和Collections的解决方案。
  2. 转移到 EmberJS 上,使用 Handlebar 的模板机制。

  3. 转移到 AngularJS 上,全新的理念和编程思路。

转移前的分析