目录
一、什么是前后端分离?
前后端分离既是一种开发模式,又是一种架构模式。在开发阶段,前后端开发人员约定好数据交互接口,实现并行开发与测试;在运行阶段,前后端采用分离部署,使用HTTP或其他通讯协议进行交互请求。前端人员主要负责从后端获取数据进行展示并进行页面的路由,后端人员主要为前端人员提供数据模型以及进行业务逻辑处理。
二、为什么需要前后端分离?
1、前后端职责不清
在传统的业务系统中,由于没有约束,前后端代码耦合在一起,日期月累,导致系统的可维护性会越来越差。Web开发人员可能既需要掌握前端开发技术,又要掌握后端开发技术,人才招聘成本也大幅度提高。
2、开发效率不高
由于前后端代码耦合过多,前端过度依赖后端,无法做到独立开发和测试,通常是等后端接口出来之后才能进行开发和测试,后端也无法摆脱对前端展示的强关注,做到专注于业务逻辑的开发,这样就会导致开发效率大大降低,无法满足互联网时代的产品快速迭代需求。
三、前后端分离究竟分离了什么?
1、开发职责的分离
前端负责数据展示和页面路由,后端负责提供数据模型和业务逻辑处理。前后端开发人员各司其职,做到并行开发。
2、交互方式的分离
前端通过HTTP请求获取数据,后端按约定的数据格式提供接口,一般为REST风格的接口。
3、代码组织方式的分离
前端代码与后端代码在不同的工程目录或不同的代码库,前端不需要知道后端的技术架构,后端也不需要知道前端的技术架构,前后端都有充分的自由采用各种技术来进行系