从MVC到前后端分离

2017-10-23  本文已影响0人  LoseyourseIf

一、MVC

  MVC是一种非常经典的设计模式,全名为Model-View-Controller,即模型(M)-视图(V)-控制器(C)。
  其中,模型是数据的载体,其本质是一个普通的Java Bean,包含一系列的成员变量及其方法。对于视图而言,它更加偏重于展现,也就是说,视图决定了用户界面(UI)最终的呈现,在Java中可通过JSP来充当视图,或者通过纯HTML的方式进行展现,而后者才是目前的主流。模型和视图需要通过控制器来进行粘合,例如,用户发送一个HTTP请求,此时该请求首先会进入控制器,然后控制器去获取数据并将其封装为模型,最后将模型传递到视图中才能展现。

二、MVC模式的缺点与不足

  MVC模式早在上个世纪70年代就诞生了,直到今天它依然存在。Java中的Struts、Spring MVC等框架的出现,让MVC模式真正落地,让开发更加高效,让代码耦合度尽量减小,让应用程序各部分的职责更加清晰。
  
  个人认为传统的MVC模式已经不能很好适应目前互联网应用的开发,原因如下:

  目前的开发过程中大多是接口先行,而用户界面随时都在调整,由此可能频繁的产生过多的更新操作,降低开发效率。
  以JSP为例,其展现必须依赖于模型,没有模型无法呈现最终效果,渲染视图的过程是在服务端来完成的,最终呈现给用户的是带有模型的视图页面,性能无法得到很好的优化。模型和视图依赖过于紧密,某块业务可能只需要新增一个视图,而这个新增就会因为MVC模式思想的限制而去增加业务逻辑层和数据访问层的代码

  那么如何让前端关注界面展现,后端关注业务逻辑,分工明确,职责清晰,敏捷开发呢?当然是使用REST服务将应用程序进行前后端分离

三、REST

REST(英文:Representational State Transfer,简称REST,表述性状态转移)描述了一个架构样式的网络系统。它首次出现在 2000 年 Roy Fielding 的博士论文中,他是 HTTP 规范的主要编写者之一。REST倾向于用更加简单轻量的方法设计和实现。

  基于 Maven 的RESTFUL SSM 框架搭建

上一篇下一篇

猜你喜欢

热点阅读