在首次登陆时需要加载大量的资源。
(4) 前景
单页面应用有其巨大的优势,并且随着前端框架的丰富和优化,有些单页面的性能和native相差无几,在未来的软件中会出现越来越多的单页面应用。
(5) 特点
传统的网页应用,通过刷新,跳转,提交等方式来提供服务。所有的业务,路由跳转都由服务器处理,然后交由浏览器展示,也就是MVC全部交由服务器,浏览器只是通过网络进行显示,如图2。1所示:
图2。1 传统的网页
显而意见的是,这种模式需要页面频繁刷新,并不断加载,导致对服务器的压力巨大,同时,在这个系统中前端的比重较小,所有的中心都偏向于后端,这对于一个开发团队来说是不和谐的。
而单页面应用有效的避免了这个缺点。文献综述
它将路由放在浏览器端[2],由路由器监控浏览器hash值得变化,分配到对应的路由,调用不同的模块,以此展示不同的视图。
通过定义不同的前端组件,通过Ajax请求,实现前后端数据传输,在路由变化时,不需要重新加载页面,而只需要调用这些组件,修改DOM元素或者加载js。
单页面应用前端有自定义的数据层,浏览器通过用户的行为改变对应的数据结构或执行某些提交操作,而服务器端作为一个处理数据的API,为浏览器端的模块调用。
图2。2 单页面应用
2、Backbone。js
Backbone是一套为复杂的Web应用提供模型,集合,视图的结构化js。
Backbone提供了单页面应用所需的数据层。
模型(Models)用于绑定用户操作需要的数据和自定义事件[3]。
集合(Collection)用来批量操作模型事件,并且附带有大量的集合操作函数API[3]。
视图(View)可以声明事件的回调函数[3]。并且可以通过RESTful 风格的接口连接到程序。
路由(Router)为应用程序提供链接,并且它提供了回调函数用来进行url更换和不同模块的加载。这也构成了单页面应用的基础。
优点:Backbone体积很小,轻量级框架,操作灵活,可以使用jquery操作DOM元素。也就是说,Backbone只是提供了一个前端MVC的框架,更多的操作需要自己实现,非常方便自己去实现自定义的模块。提供自定义的模板,开发者可以自由引入想要的模板引擎。支持RESTful风格的API,方便与后台的交互和实现。
缺点:Backbone过于简单,项目中所需得很多东西都需要自己手动实现。对SEO的支持不好。Backbone的实例很少,网上的参考不多。使用Backbone本身并不会减少代码量。视图本身依赖jquery。入门较为困难,需要一定的WEB基础。
发展前景:Backbone作为前端MVC框架的鼻祖,在Angular和React之前,现在有越来越多的框架采用了这种思想,其本身是一脉相传的。随着浏览器和网络的发展,现在越来越多的交互交给前端,像这种包含数据,模型,控制器的前端框架必然会占据越来越重要的位置。
3、Spring MVC框架简介
MVC(Model View Controller),是一种软件的设计模式,M代表模型,V代表视图,C是控制器的简称,它的主要设计思想是把一个业务的流程分成三个部分[4]。一、该业务流程中用到的数据,并将其进行封装。并将封装完成的数据经过指定的操作,将其达到用户需要的状态 ,所以它是项目流程的核心地位。二、控制器,控制器将经过操作的数据持久化或交给指定的视图。在逻辑上将模型和视图关联起来,因此它处于控制和分发的核心地位。三、视图,经过业务逻辑的处理,前端通过某种指定的方式将其展现给用户。也就是说,不止是jsp,任何种类给与用户展示信息的方式都可以称之为视图。它用业务逻辑、数据、界面显示三者分离的方法组织代码。来`自+优-尔^论:文,网www.youerw.com +QQ752018766-