一 为什么要进行前后端分离
- pc, app, pad 多端适应,如果仅使用传统的后端模板的生成的方式,仅适用于pc端,app端是做不了的
- SPA开发模式开始流行,单页面跟后端交互的最流行的就是前后端分离(就是后端提供api接口数据,前端负责数据的展示)
- 前后端开发职责不清(例如django的templates到底是由谁来写呢?)
- 开发效率问题,前后端互相等待
- 前端一直配合着后端,能力受限
- 后台开发语言和模板高度耦合,导致开发语言依赖严重
二 前后端分离缺点
- 前后端学习门槛增加
- 数据依赖导致文档重要性增加(前后端数据的传递通过文档来进行)
- 前端工作量加大
- SEO的难度加大, 搜索引擎优化,前后端分离就意味着我们的页面是使用ajax或者是网络来请求的,这样的话,就防止了很多的爬虫(百度一些搜索引擎)
- 后端开发模式迁移增加成本(对很多的基于模板语法开发的模式,迁移成本就加大了)
最后
当优点大于缺点的时候,我们都可以想办法去解决这些缺点,所以说,前后端分离实际上是一种趋势