为什么前后端需要分离
传统模式 mvc mvvm
mvc
mvvm
简称 MVVM是Model-View-ViewModel的缩写。
由来
1.纯静态网站
2.网站少量数据的改变 导致asp jsp的诞生
3.95年之后javascript可以动态修改网页内容
4.mvc产生 可以修改客户端数据 可以修改服务器端数据
5.技术发展跟不上需求 导致mvvm出现
6.v vm m view viewModel modal(客户端model) 真是的model存在靠近数据库的地方
什么是前后端分离
遇到的问题
模版层归属于谁?
缺点
- 后端不擅长写前端js 导致开发效率受影响
- 前端写的话需要配置后台项目 每次更新数据重启项目比较繁琐
- 接口文档不好管理
- 联调比较繁琐
前端
数据展现 用户基本交互 提升用户体验
后台 基本分层
Controller Web主要负责接收前端的Http请求,对数据做初步校验,然后将数据封装,传给业务层 模版渲染
业务服务层(处理业务逻辑) 处理基本业务逻辑
数据服务层(持久化) 数据库层对数据的储存
前后端分离的原因(解决方案)
APS
在这种方式中 前后端交互的方式变成纯粹的json交互模式
** 优点
1. 前后端约定接口数据格式之后,相互独立开发 彼此不受影响 提升开发效率
2. 交互方式的改变 使得前端开发更加自由 本地可以mock数据进行基本交互的处理
3. 每次交互传输json数据节省了服务器带宽 提升用户体检
** 缺点
1. SPA应用对SEO不友好
2. 首屏加载慢 必须等待所有js文件加载完毕之后 才能显示出页面 (解决方法路由懒加载 或者 在首页id=app中写伪样式框架提升用户体验)
3. api的暴露相对降低了系统的安全性
优化开发阶段
- 接口定义
- 开发
- 联调
代理转发
抽出一会事件看了阮一峰老师,让我感受颇深 。
技术在发展的同时是不是也在侵蚀我我们每一个人的灵魂。
对未来的自己,以及未来的世界既充满了希望,又充满了恐惧。
因为深处在北京的我见识过2016-2018年北京的巨大变化,有的人有的公司 一夜成名。也有的人一夜之间倾家荡产。
当然每个人都碰破了头的在北京闯荡,有的人希望永远的能留在北京 ,有的人为了钱,有的人为了生存 每个人的目的不尽相同