一、前后端分离的好处
1、提高开发效率
前后端各负其责, 前端和后端都做自己擅长的事情,不互相依赖,开发效率更快,而且分工比较均衡,会大大提高开发效率。
2、优化用户体验
用户访问速度快,提升页面性能,优化用户体验。没有页面之间的跳转,资源都在同一个页面里面,无刷线加载数据,页面片段间的切换快,使用户体验上升了一大截;前后端不分离,稍不留神会触发浏览器的重排和重绘,加载速度慢,降低用户的体验
3、增强代码可维护性
增强代码可维护性,降低维护成本,改善代码的质量。前后端不分离,代码较为繁杂,维护起来难度大,成本高。
4、减轻后端服务器的请求压力
最大的好处就是前端JS可以做很大部分的数据处理工作,对服务器的压力减小到最小。
5、适应能力强
同一套后端程序代码,不用修改就可以用于Web界面、手机、平板等多种客户端。
6、错误秒接
后台错误不会直接反映到前台,错误接秒较为友好。
二、前后端分离的坏处
1、首屏渲染的时间长
将多个页面的资源打包糅合到一个页面,这个页面一开始需要加载的东西会非常多,而网速是一定的,所以会导致首屏渲染时间很长,首屏渲染后,就是无刷新更新,用户体验相对较好。
2、不利于搜索引擎的优化(SEO)
现有的搜索引擎都是通过爬虫工具来爬取各个网站的信息,这些爬虫工具一般只能爬取页面上(HTML)的内容,而前后端分离,前端的数据基本上都是存放在行为逻辑(JavaScript)文件中,爬虫工具无法爬取,无法分析出你网站到底有什么内容,无法与用户输入的关键词做关联,最终排名就低。