AngularJS 与 EmberJS

本贴最后更新于 3824 天前,其中的信息可能已经时移世异

前端 JavaScript 框架对比

目前比较主流的几个浏览器客户端 JavaScript 框架对比:

前端 mvw 框架对比

从左到右是框架提供的功能特性由少到多,对应用开发的支持逐渐丰富;
从下到上是框架设计复杂度/上手难度由简单到复杂。

AngularJS v.s. EmberJS

这里重点对比 EmberJS 和 AngularJS 的差异:

                             AngularJS          EmberJS    
模版   通过 HTML 标签  自定义标签(字符串)
 社区支持  Google  个人
 性能  略好  略差
 标准化  可能性较大 可能性较小 

这两者都是浏览器客户端的 MVW 框架,从使用上看对开发的要求是基本相近的,都需要开发者以 MVC 的视角去设计前端(而不是针对页面、DOM 进行实现),这和服务器端的设计思路非常类似,有助于复杂应用进行模块化开发。细节上 AngularJS 的设计也更贴近 Java 风格的开发者(比如依赖注入、路由 API 等)。

AngularJS 使用须知

开发者在使用 AngularJS 时也需要使用和这个框架匹配的开发方式:

  • 非常适合于 SPA(Single Page-application),一个应用只有一个页面 (DOM),例如 Gmail
  • 标准分层(视图模版、控制器、服务),以“请求分发”为起点来规划模块
  • 优先使用 ng 模块实现需求(比如路由模块、动画模块),而不是使用其他库(jQuery)

AngularJS 与 FreeMarker

在生成 ng 模版时服务器端最好也是用模版引擎(例如 FreeMarker)来处理,基于 HTTP 请求-响应的交互过程如下:

AngularJS 与 FreeMarker

P.S. 服务器端选择 Node 可能更适合。

  • FreeMarker

    FreeMarker 是一款好用且功能强大的 Java 模版引擎。

    23 引用 • 20 回帖 • 464 关注
  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3187 引用 • 8213 回帖
  • Node.js

    Node.js 是一个基于 Chrome JavaScript 运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞 I/O 模型而得以轻量和高效。

    139 引用 • 269 回帖 • 41 关注
  • AngularJS

    AngularJS 诞生于 2009 年,由 Misko Hevery 等人创建,后为 Google 所收购。是一款优秀的前端 JS 框架,已经被用于 Google 的多款产品当中。AngularJS 有着诸多特性,最为核心的是:MVC、模块化、自动化双向数据绑定、语义化标签、依赖注入等。2.0 版本后已经改名为 Angular。

    12 引用 • 50 回帖 • 476 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...