我试图从其网站http://documentcloud.github.com/backbone上了解backbone.js的实用功能,但我仍然搞不懂太多。
谁能帮我解释一下它是如何工作的,以及它如何有助于编写更好的JavaScript?
我试图从其网站http://documentcloud.github.com/backbone上了解backbone.js的实用功能,但我仍然搞不懂太多。
谁能帮我解释一下它是如何工作的,以及它如何有助于编写更好的JavaScript?
当前回答
已经有这么多好答案了。Backbone js有助于保持代码的组织性。更改模型/集合可以自动处理视图渲染,从而减少了大量的开发开销。
尽管它为开发提供了最大的灵活性,但开发人员应该小心地销毁模型并正确地删除视图。否则,应用程序中可能会出现内存泄漏。
其他回答
JQuery和Mootools只是一个工具箱,里面有很多你项目的工具。Backbone就像你的项目的架构或主干,你可以在上面使用JQuery或Mootools构建应用程序。
它还添加了使用KVO控制器和视图的路由。您将能够使用它开发“AJAXy”应用程序。
可以把它看作是一个轻量级的Sproutcore或Cappuccino框架。
这是一个很好的入门视频: http://vimeo.com/22685608
如果你想了解更多关于Rails和Backbone的知识,Thoughtbot有这本非常好的书(不是免费的): https://workshops.thoughtbot.com/backbone-js-on-rails
涉及大量用户交互和许多AJAX请求的web应用程序,需要不时更改,并实时运行(如Facebook或StackOverflow)应该使用MVC框架,如Backbone.js。这是构建好代码的最好方法。
如果应用程序很小,那么Backbone.js就太过分了,尤其是对第一次使用它的用户。
Backbone为您提供了客户端MVC,以及由此隐含的所有优势。
Backbone由Jeremy Ashkenas创建,他还编写了CoffeeScript。作为一个javascript较多的应用程序,我们现在所知道的Backbone负责将应用程序构建成一个一致的代码库。backbone的唯一依赖项Underscore.js也是DocumentCloud应用的一部分。
Backbone帮助开发人员在客户端web应用程序中管理数据模型,与传统服务器端应用程序逻辑中的规则和结构一样多。
使用Backbone.js的其他好处
将Backbone视为一个库,而不是一个框架 Javascript现在以一种结构化的方式组织起来,即(MVVM)模型 庞大的用户群体