Ember.js与其他传统Web应用程序的区别
今天用于创建Web应用程序的主要方法有两种:
- 单页应用程序(SPA):在Web浏览器中执行大部分用户界面逻辑,并主要使用Web API与Web服务器进行通信。
- 传统Web应用程序:在服务器上执行大部分应用程序逻辑。
什么是传统Web应用程序?
传统Web应用程序是在服务器端执行大部分应用程序逻辑的应用程序。它们由客户端的Web浏览器和Web服务器(Apache HTTP Server)组成。例如:静态Web HTML页面。
传统Web应用程序适用于必须在部分或完全不支持JavaScript的浏览器中工作的Web应用程序。
传统Web应用程序的一些特点:
- 当应用程序具有简单的客户端需求时,可以使用传统Web应用程序。
- 如果我们的应用程序必须在不支持JavaScript的浏览器中运行,应使用传统Web应用程序。
- 最小化的客户端应用程序行为。
什么是Ember.js?
Ember.js是一个用于创建野心勃勃的单页Web应用程序的客户端JavaScript框架。它是一个开源的JavaScript Web框架,通过集成其他单页Web应用程序生态系统原则,使开发人员能够构建可扩展的单页Web应用程序。
ember.js应用程序的初始页面加载会下载运行所需的所有文件。因此,用户不需要加载新页面来使用应用程序,UI将快速响应。这种架构的好处是,您的Web应用程序和原生应用程序可以使用相同的REST API。
Ember.js的一些特点:
- Ember是一个开源的MVVM(Model-View-ViewModel)模型框架。
- Ember易于使用。高度复杂的功能易于清晰地访问。
- 它会创建批处理相似的绑定和DOM更新以提高性能。它避免了每个任务的重新计算。
- 由于高度发达的控制系统,用户可以无缝集成新版本。
- 用户可以利用Ember API来开发简单和模块化的代码。
Ember.js与其他传统Web应用程序的区别:
| Ember.js | 传统的网络应用程序 |
|---|---|
| Ember是一个单页面应用程序。它在加载完成后处理所有内容,因此不需要从服务器获取任何其他页面。 | 传统的网络应用程序重新加载整个页面并显示更新后的页面。每次数据传输时,都会从服务器请求一个新的页面在Web浏览器中显示。 |
| Ember提供跨浏览器支持。Ember使用户能够开发与各种浏览器及其版本兼容的代码。Ember使用Babel将现代JavaScript转换为与所有当前浏览器兼容的格式。 | 对于传统的网络应用程序,可能有的代码在一个版本的Chrome中运行良好,但在某个版本的Edge或Firefox中出现错误。 |
| Ember中的路由帮助维护了典型单页面应用程序所承诺的无缝用户体验。 | 每次用户与重定向到某个新页面时,都会加载一个新的页面,这使得用户体验不那么无缝。 |
| Ember JS具有快速启动时间,有助于服务器端渲染,使您的应用程序对搜索引擎可访问。 | 与现代框架应用程序相比,传统的网络应用程序通常启动时间较慢。 |
| Ember允许用户创建路由、模型、模板和组件。这使得各个组件可重用,并且在不妨碍其他组件的情况下和谐开发。 | 传统应用程序是作为一个长文件创建的,没有构建块或组件。 |
| Ember拥有大量的插件,其中大部分可以一行安装。它减少了从头开始编写代码的工作量。 | 传统的网络应用程序需要从头开始编写所有内容,并且插件较少。 |
总结: Ember是一个开发用于移动设备、Web和其他平台的交互式应用程序的极好工具。然而,由于学习曲线和使用类似Ember的较新框架的麻烦,传统的网络应用程序仍然在使用中。
极客教程