单页Web应用 SPA(single page web application)

什么是SPA单页web应用

单页Web应用无疑是目前网站开发技术的弄潮儿,很多传统网站都在或者已经转型为单页Web应用,新的单页Web应用网站(包括移动平台上的)也如雨后春笋般涌现在人们的面前,如Gmail、Evernote、Trello等。如果你是一名Web开发人员,却还没开发过或者甚至是没有听说过单页应用,那你已经Out很久了。

查看Demo: https://spa-demo.ibenchu.com/

为什么这样做

  • 良好的交互体验

用户不需要重新刷新页面,获取数据也是通过Ajax异步获取,页面显示流畅。 也就是页面无刷新,用户可以像操作本地APP 一样操作网页。

  • 良好的前后端工作分离模式

单页Web应用可以和RESTful规约一起使用,通过REST API提供接口数据,并使用Ajax异步获取,这样有助于分离客户端和服务器端工作。更进一步,可以在客户端也可以分解为静态页面和页面交互两个部分。
换句话说,后端再也不用费劲地套前端模板了,把这些事都扔给前端做吧,只需要做好自己的API接口就行。

  • 减轻服务器压力

服务器只用出数据就可以,不用管展示逻辑和页面合成,吞吐能力会提高几倍。
前端的页面可以部署在CDN上,进一步提高速度,而后端只需要1-2M的带宽处理API接口

  • 共用一套后端程序代码

不用修改后端程序代码就可以同时用于Web界面、手机、平板甚至智能硬件等多种客户端。 这对于后期的拓展,程序改动(需要调用数据或者开放接口)来说,能够大大减少工作量

谁在这样做

国内一线互联网企业已经开始这样做, 尤其是BAT, 目前钉钉、滴滴 已经大面积使用。

如何基于 Notadd 构建 API

如何用 Vue2 写出 web 单页应用

基于 Notadd 的 SEO 优化方案

(待撰写…)