In order to choose which framework is right for your build, we’ve asked four important questions of each framework.

AngularJS

1. What is AngularJS?

AngularJS is a client-side JavaScript framework that allows you to organize large, client-heavy applications into something manageable.

2. What does Angular do better than competing frameworks?

Angular has nifty features such as two-way data binding, the ability to make custom HTML tags/attributes/comments that encapsulate functionality, and built-in directives that extend the functionality of normal HTML. Angular is also really versatile, it can be used for large, one-page app projects or for a small little element; there’s not much setup required to start using Angular’s built-in directives.

3. Where does Angular fall short?

Angular’s biggest drawback is that there can be many ways to do one thing. Until you use Angular for something fairly big, it can be difficult to find the best ways of doing things. Also, you have to be very careful to clean up events and DOM elements if you work with them in a “non-Angular” way or you may create memory leaks.

4. What type of applications are best built with Angular?

Angular is great for just about anything you want to do with JavaScript in the browser, big or small. If you want a framework that makes your HTML more declarative and gives you neat features like directives, then AngularJS is a great choice. If you want a more opinionated framework that forces you to structure code in a particular way, then you might want to look at another option.

Some applications built with AngularJS include:

Backbone.js

1. What is Backbone.js?

Backbone.js is a minimalistic JavaScript framework that gives structure to web applications by pulling your “truth” — your model — out of your DOM and into Backbone’s Model, Collection, and View objects.

2. What does Backbone do better than competing frameworks?

Backbone is relatively easy to implement on a small portion of a page, and at only 6KB for the entire production version library, a little code can mean a lot of organization for your application. With far fewer concepts to grasp than Angular or Ember, Backbone is easier to get started with and allows for greater control over the method of implementation.

3. Where does Backbone fall short?

The “hands-off” approach of Backbone may mean implementing many features that are already in other frameworks. Backbone doesn’t include data-binding, the ability to have changes in one place trigger a change elsewhere. You could set this up on a per-case basis, but it’s not a core feature of Backbone.

4. What type of applications are built with Backbone?

Being one of the first JavaScript MVC (or what most call MVV) frameworks, Backbone has a head start on other frameworks that have only become popular in the last year or two.

Some applications built with Backbone.js include:

Ember.js

1. What is Ember.js?

Ember is a framework for creating rich JavaScript web applications.

2. What does Ember do better than competing frameworks?

Ember has conventions that can help developers be more productive and write better code. These conventions help facilitate the collaboration between different developers working on the same project. Ember also has top-notch router and URL handling.

3. Where does Ember fall short?

After you get past the basics, Ember’s learning curve can be a bit steep. Since the API has changed so rapidly, a lot of the code examples you may find online are out of date.

4. What type of applications are built with Ember?

Ember is typically used for building long-lived applications, such as admin dashboards where a user is expected to keep their browser open for many hours.

Some teams that build with Ember.js include:

[转]Angular, Backbone, or Ember: Which is Best for your Build?的更多相关文章

  1. Angular.js vs Ember.js

    Angular.js 拥抱 HTML/CSS Misko Hevery(Angular.js的开发者之一)回答了这一问题,他的主要观点如下: 在HTML中加入太多逻辑不是好做法.Angular.js只 ...

  2. 【转】Angular.js VS. Ember.js:谁将成为Web开发的新宠?

    本文源自于Quora网站的一个问题,作者称最近一直在为一个新的Rails项目寻找一个JavaScript框架,通过筛选,最终纠结于 Angular.js和 Ember.js. 这个问题获得了大量的关注 ...

  3. Angular.js VS. Ember.js:谁将成为Web开发的新宠?

    这篇博文陈述的非常好,比较全面的剖析了Angular.js与Ember.js,下面的链接,供学习与参考: http://www.csdn.net/article/2013-09-09/2816880- ...

  4. 【JavaScript】对比12 款优秀的JavaScript MVC/MVVC框架 你最喜欢Backbone or Ember

    http://codebrief.com/2012/01/the-top-10-javascript-mvc-frameworks-reviewed/ 目前基本所以后台程序都是面向对象MVC模式开发, ...

  5. AngularJS Backbone.js Ember.js 对比

    看到一篇关于AngularJS Backbone Ember.js的对比,建议看一看 说说个人的观点(本人学艺不精,只是个人的观点,不保证观点完全正确,请轻拍): backbone.js 短小精悍,非 ...

  6. 【JavsScript】JavaScript MVC框架PK:Angular、Backbone、CanJS与Ember

    摘要:选择JavaScript MVC框架很难.一方面要考虑的因素非常多,另一方面这种框架也非常多,而要从中选择一个合适的,还真得费一番心思.本文对JavaScript MVC框架Angular.Ba ...

  7. JavaScript MVC框架PK:Angular、Backbone、CanJS与Ember

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...

  8. JavaScript MVC框架PK:Angular、Backbone、CanJS与Ember(转载)

    原文地址:http://sporto.github.io/.../comparison-angular-backbone-can-ember/ 原文作者:Sebastian Porto @Twitte ...

  9. Top JavaScript Frameworks, Libraries & Tools and When to Use Them

    It seems almost every other week there is a new JavaScript library taking the web community by storm ...

随机推荐

  1. Thrift 应用场景(收集版)

    官网: http://thrift.apache.org/ 一些介绍使用的文章: http://www.ibm.com/developerworks/cn/java/j-lo-apachethrift ...

  2. ARM 平台上的Linux系统启动流程

    开始学习嵌入式开发就一直在使用Linux系统作为学习的平台,到现在无论是PC机还是ARM开发板都已经能顺利地跑起了Linux系统,但是对Linux 的启动流程还是不甚了解.于是开始各种百度谷歌,当然看 ...

  3. .NET异步操作学习之一:Async/Await中异常的处理

    以前的异常处理,习惯了过程式的把出现的异常全部捕捉一遍,然后再进行处理.Async/Await关键字出来之后的确简化了异步编程,但也带来了一些问题.接下来自己将对这对关键字进行学习.然后把研究结果放在 ...

  4. html5异步上传图片显示上传文件进度条

    <html> <head> </head> <body> <p> emo_album_id:<input type="tex ...

  5. xcopy总是询问是文件名还是目录名

    我需要运行类似xcopy /y a.xml .\pics\b.xml很多次,但xcopy总是问我“文件名还是目录名” 可以这样通过管道来做echo f | xcopy /y a.xml .\pics\ ...

  6. PHP获得文件的md5并检验是否被修改

    由于需要判断上传的文件是否被修改过,需要记录上传文件的md5值,所以这里说一下一下获取文件md5值的方法.   md5_file() md5_file() 函数计算文件的 MD5 散列.md5() 函 ...

  7. BZOJ 1592: [Usaco2008 Feb]Making the Grade 路面修整

    Description FJ打算好好修一下农场中某条凹凸不平的土路.按奶牛们的要求,修好后的路面高度应当单调上升或单调下降,也就是说,高度上升与高度下降的路段不能同时出现在修好的路中. 整条路被分成了 ...

  8. hdu 3394 Railway

    这是一道用tarjin求双连通分量的题: 其中,不需要修的道路就是桥的数目: 在图的每个极大环中,如果点的数目小于边的数目,显然这个环中含有子环,并且这个环的边数就是这个环中有冲突的边的数目: 如果点 ...

  9. Codeforces Round #197 (Div. 2) : C

    哎....这次的比赛被安叔骂的好惨! 不行呢,要虐回来: 这道搜索,老是写错,蛋疼啊! 果然是基础没打好! #include<cstdio> using namespace std; ], ...

  10. Stanford CoreNLP--常量定义

    在运行Stanford CoreNLP过程中会用到tokenize,pos等参数,这些以常量形式定义在edu.stanford.nlp.pipeline.Annotator中,具体如下: /** * ...