前后端分离优缺点
之前有朋友问我:什么是前后端分离。他说北度搜到的都是大篇幅文章,看完还是很懵。
这里我简单总结下,如果有疏漏和不对的地方还请路过的网友指出。
一、先用一张图来解释
二、为什么要前后端分离(优点)
1. 全端适应
PC、APP、PAD等。
2. SPA开发模式开始流行
SPA即Single Page Web Application,俗称单页应用。
3. 前后端开发职责不清
比如JSP、PHP页面,到底是由前端写还是后端写 (所有的模板语言会遇到这样的问题)。
4. 开发效率问题,前后端互相等待
要把html转成template等,效率比较低。
5. 前端一直配合着后端,能力受限
很多交互逻辑要在template里面由后端实现,前端只负责提供静态html,对前端工程师的能力提高不利。
6. 后台开发语言和模板高度耦合,导致开发语言依赖严重
比如后端是Java写的,后期要换成Python,可是模板中嵌入了很多Java语法,等于要重写整个template。
三、前后端分离缺点
1. 前端学习门槛增加、前端工作量加大
前端需要实现一部分的交互逻辑。
2. 数据依赖导致文档重要性增加
接口文档需要很详细,且要及时更新。(一个段子,程序员最痛恨两件事:1.别人的代码没写文档,2.写文档)
3. SEO难度加大
前端渲染的页面不利于搜索引擎爬虫爬取&#