对前后端分离的认知

·  阅读 375

为什么前后端需要分离

参考

传统模式 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存在靠近数据库的地方

什么是前后端分离

遇到的问题

模版层归属于谁?

缺点
  1. 后端不擅长写前端js 导致开发效率受影响
  2. 前端写的话需要配置后台项目 每次更新数据重启项目比较繁琐
  3. 接口文档不好管理
  4. 联调比较繁琐

前端

数据展现 用户基本交互 提升用户体验

后台 基本分层

Controller Web主要负责接收前端的Http请求,对数据做初步校验,然后将数据封装,传给业务层 模版渲染 业务服务层(处理业务逻辑) 处理基本业务逻辑 数据服务层(持久化) 数据库层对数据的储存

前后端分离的原因(解决方案)

APS

在这种方式中 前后端交互的方式变成纯粹的json交互模式

优点

1. 前后端约定接口数据格式之后,相互独立开发 彼此不受影响 提升开发效率
2. 交互方式的改变 使得前端开发更加自由 本地可以mock数据进行基本交互的处理
3. 每次交互传输json数据节省了服务器带宽 提升用户体检
复制代码

缺点

1. SPA应用对SEO不友好
2. 首屏加载慢 必须等待所有js文件加载完毕之后 才能显示出页面 (解决方法路由懒加载 或者 在首页id=app中写伪样式框架提升用户体验)
3. api的暴露相对降低了系统的安全性
复制代码

优化开发阶段

  1. 接口定义
  2. 开发
  3. 联调

代理转发

分类:
前端
标签:
收藏成功!
已添加到「」, 点击更改