Single Page Application概览

时间:2022-04-22
本文章向大家介绍Single Page Application概览,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

第一点 :传统web应用遇到的2个问题

1.User Experience 用户体验

2.Performance 性能问题

SPA如何解决这些问题的:

不重新加载页面,交互尽可能使用一个web document对象。

用户体验变得更加的连续和流畅,同时网络延时带来的影响也很容易忽略。

第二点: 有一下技术方法可以用来,发送请求给服务器。

客户端技术

1.AJAX技术,采用jQuery ajax请求可以做跨浏览器兼容问题,未来的一个趋势。

2.Browser Plugins 向服务器异步发送请求 Silverlight,Flash和Java Applets技术

中间数据传输格式:

XML(XSLT)JSON(using the JavaScript to update the partial area of DOM)

服务器端技术:

提供给客户端数据API或者web service。当然API或者web service可以接收参数的传递

ASP.NET Web API技术和Web Service技术,升级版的WCF技术。

第三点: 在本地运行

借助HTML5的Web storage技术

第四点: SPA应用的挑战

1.SEO

2.Browser history 浏览器历史记录

HTML5 specification中介绍了pushState和replaceState来处理实际的URL地址和浏览器历史记录问题。

第五点:页面的生命周期

库介绍

客户端类库介绍:

Backbone.js: A client side Model-View-Controller(MVC) library.

Knockout.js : A JavaScript library that helps provide two way data binding fro web apps, inlcuding SPAs.

服务器端类库介绍

ItsNat

ZK:Java RIA AJAX framework, simulates a XUL desktop page in the server. This is rendered as HTML to the browser with event handlers running over AJAX on the server.

GWT技术:

客户端和服务器类库介绍

Derby和Exo

开发工具:

Omnis Studio.

引用:

http://en.wikipedia.org/wiki/Single-page_application