从前后一体化到前后端分离开发

从前后一体化到前后端分离开发

前端:用户所能看到的,可操作的页面
后端:用户看不到的,进行数据处理的部分

前后一体化——MVC架构

所谓前后一体化,即由同一个人或同一个团队完成软件系统前端和后端的开发。这样做,不仅要求开发人员要同时精通前端和后端开发语言,而且使得开发人员需要不断地在页面思维和逻辑思维之间转换,不能集中于处理一种问题。对于复杂的大型项目的开发,非常不友好,前后一体化的经典架构就是耳熟能详的MVC架构。
MVC是一种典型的非前后端分离的开发方式,在向客户作出响应时,必须要在服务器上将全部的数据渲染到页面中,生成页面的最终html代码,然后再将html代码返回给浏览器。分析MVC的工作流程,我们不难发现其缺点:

  1. 后台如果要连接很多数据库表才能完成数据处理,那么就需要较长时间才能完成页面的渲染并返回,影响了用户体验。
  2. 前后端开发的联调可能需要相互等待,降低了双方的开发效率。

那么,就有了一种理想状态:
先给用户展示一部分渲染好页面,剩下的数据处理好了再渲染,甚至等用户需要的时候再去服务器获取并渲染呢???当然有,答案就是RESTful,这是一种前后端分离的开发方式。

前后端分离

RESTful其本质就是URL访问服务器资源的一种方式,REST 是一个“无状态”的架构模式,因此在任何时候都可以由客户端发出请求到服务端,最终返回自己想要的数据,当前请求不会受到上次请求的影响。基于此,我们就可以实现上述的理想状态。
在页面加载时,会通过URL获取一部分数据,数据按照获取到的顺序,渲染到页面中,所以可能用户先看到无数据的页面,然后再看到数据的呈现,由于互联网的高速访问,这种时间差是非常微小,用户可以接受甚至是感觉不到的。剩下的数据,在用户需要用到的时候,再通过URL访问,渲染到页面中即可。

重造轮子?

更换了开发方式,我们是否需要使用新的开发技术呢?当然不需要,重复造轮子是非常低效的。拿Java开发举例,我们可以制作一个统一的响应结构类(通常定义为Result或Response),再利用Java的序列化机制即可实现前后端分离式的开发。

本文只希望记录从一体化开发到分离式开发的思想转变,在Java中的具体实现方式将会随着学习的继续深入在后期链接在文后

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值