同作为JavaScript MVC框架,Backbone和AngularJS各有什么优缺点_百度知 ...
发布网友
发布时间:2022-05-01 12:43
我来回答
共1个回答
热心网友
时间:2022-05-14 17:30
Backbone和AngularJS对比:
1、模板引擎不同。
(1)AngularJS
Angular 的模板引擎仅仅是在 HTML 上使用绑定表达式。而绑定表达式又仅仅是两层大括号而已:
<ul>
<li ng-repeat="framework in frameworks"
title="{{framework.description}}">
{{framework.name}}
</li>
</ul>
(2)Backbone 可以和许多第三方模板引擎集成,默认的选择是 Underscore 模板。 因为 Underscore 是 Backbone 的依赖项,比较麻烦的是,Underscore 的模板引擎非常初级,通常不得不把 javascript 混进去,比如说:
<ul>
<% _.each(frameworks, function(framework) { %>
<li title="<%- framework.description %>">
<%- framework.name %>
</li>
<% }); %>
</ul>
2、各自的好处不同:
Angular 为 Web 开发带来了许多创新的概念。双向数据绑定节省了大量的样板代码。比如下面的 jQuery 代码片段:
$('#greet-form input.user-name').on('value', function() {
$('#greet-form div.user-name').text('Hello ' + this.val() + '!');
});
由于 Angular 的双向绑定,你根本就不需要自己写代码。只需要在 HTML 模板里面声明绑定就可以了:
<input ng-model="user.name" type="text" />
Hello {{user.name}}!
总结:Angular 帮助你把构建应用的程序块划分为下面这几种类型:控制器(Controller),指令(Directive),工厂(Factory),过滤器(Filter),服务(Service)和视图(View) (就是模板)。它们被组织为模块形式,之后可以被另一个引用。每种类型有不同的作用。视图处理 UI,控制器处理 UI 背后的逻辑,服务用来处理和后台的通信,并且将共通的有关联的功能组件结合在一起,而指令通过定义新的元素,属性和行为,很容易的构造可重用的组件,以及HTML扩展。
Backbone 轻量,快速,内存占用小。学习曲线也是很平缓的,只需要几个简单的概念就能掌握 (模型/集合, 视图, 路由)。它有很棒的文档,代码简单,注释详细,并且这里还有一个注释版源码,用来解释框架的工作细节。实际上你可以通读整个框架的源码,用不到一个小时去熟悉它。
因为又小又基础,你可以基于 Backbone 打造你自己的框架。一些基于 Backbone 的第三方框架的例子有 Aura, Backbone UI, Chaplin, Geppetto, Marionette, LayoutManager, Thorax, Vertebrae。用 Angular 和 Ember 你一般都要用框架作者给你的选择,有些可能会不适合你的工程需求和个人风格。Angular 2.0 承诺改变这种情况,通过构建更小的独立模块,使你可以选择和组合它们。不过我们还没看到它什么时候才能交付。
同作为JavaScript MVC框架,Backbone和AngularJS各有什么优缺点_百度知 ...
Backbone 轻量,快速,内存占用小。学习曲线也是很平缓的,只需要几个简单的概念就能掌握 (模型/集合, 视图, 路由)。它有很棒的文档,代码简单,注释详细,并且这里还有一个注释版源码,用来解释框架的工作细节。实际上你可以通读整个框架的源码,用不到一个小时去熟悉它。
同作为JavaScript MVC框架,Backbone和AngularJS各有什么优缺点_百度知 ...
1、框架的成熟度:Backbone相对成熟稳定,AngularJS有时会出bug,而且AngularJS的下一个版本不兼容以前的版本;(但Angular的思想是比Backbone要先进的——个人认为)2、使用灵活度:Backbone超级灵活,AngularJS则只能使用单一的解决方案;但Backbone过于灵活,所有需要自己写的东西就会很多。3、框架本身大小:...
同作为JavaScript MVC框架,Backbone和AngularJS各有什么优缺点_百度知 ...
Backbone 轻量,快速,内存占用小。学习曲线也是很平缓的 缺点:正是因为backbone轻量快速,所以很多地方我们就不得不自己做实现或者借用第三方库 纯个人观点, 具体还要你自己亲自体验一下才好
同作为JavaScript MVC框架,Backbone和AngularJS各有什么优缺点_百度知 ...
Backbone 1. 将数据和界面很好的分离开来。 2. 将事件的绑定很好的剥离出来,便于管理和迭代。 3. 使得Javascript程序的模块化更加清晰、明了。 AngularJS AngularJS通过为开发者呈现一个更高层次的抽象来简化应用的开发
同作为JavaScript MVC框架,Backbone和AngularJS各有什么优缺点_百度知 ...
Backbone很精巧,很强大。但对比AngularJS,我说说我看到的Backbone的缺点,由于接触时间短,可能会存在误解,见谅。Backbone的Model把服务器端的数据模型映射到浏览器端,绑定数据验证机制,并与相应的REST操作绑定,这样每个数据模型都变成了独立体,方便REST操作,却限制REST的灵活性。比如我要将10个todo批量...
同作为JavaScript MVC框架,Backbone和AngularJS各有什么优缺点_百度知 ...
其次,backbone和Angular在编写上也是很大不同的,backbone更侧重于JS的编写,就像开发PHP程序那样调用前端的DOM数据而Angular则是通过注入来扩展HMLT标签的属性,它们在编写思想上是不同的。最后要说的很重要的一点就是,backbone有中文的API而Angular不用说中文API就连官网都被封了,所以你只能看别人写的...
同作为JavaScript MVC框架,Backbone和AngularJS各有什么优缺点_百度知 ...
将模型、集合、视图与服务端的RESTful JSON接口连接。AngularJS 致力于mvc代码解耦,采用model,controller以及view方式去组织代码。1.数据的双向绑定:这可能是其最激动人心的特性吧,view层的数据和model层的数据是双向绑定的,其中之一发生更改,另一方会随之变化,这不用你写任何代码!(想想...
同作为JavaScript MVC框架,Backbone和AngularJS各有什么优缺点_百度知 ...
Backbone是一个轻量级MVC框架。支持单向数据绑定。(Model -> View)。可以定义自己的视图、模型和控制器。简化DOM中的事件绑定。对象映射。但因为很轻量,所以灵活性好。通常你可以自由搭配组合各种js库进行定制开发。API非常简单,没几个,基本上学习几个小时就可以轻松上手了。AngularJS说实话我没亲自用...
同作为JavaScript MVC框架,Backbone和AngularJS各有什么优缺点_百度知 ...
而angularJS相对来说实现的更具体,mvc做出了比较具体的分离,融入了一些自己的特性,框架也是面向大型应用的,这就导致相对来说学习成本更高 优缺点看个人,如果是快速开发我会选用angularjs, 如果是一个大型项目的基础架构,我会选择backbone和required js之类的库来进行架构 ...
同作为JavaScript MVC框架,Backbone和AngularJS各有什么优缺点_百度知 ...
首先angular不是MVC框架,而是MVVM框架。Backbone的框架较轻,主要是提供了一套前端js的mvc实现方案。Angular不同的是,它不仅提供了mvvm框架层面的东西,还提供了其他很多功能。backbone的优点是MVC结构清晰,模块容易复用。缺点是什么都需要自己写,设计的时候需要对业务模型有一个很好的理解和代码结构设计。...