当前位置: 代码迷 >> 综合 >> 前后端分离架构,MVVM
  详细解决方案

前后端分离架构,MVVM

热度:54   发布时间:2023-11-28 02:35:02.0

前后端分离架构

? 前后端分离已经成为互联网项目业界开发的标准使用方式,通过nginx+tomact的方式有效进行解耦,并且前后端分离会为以后的大型分布式框架,弹性计算架构,微服务架构,多段化服务(多种客户端 例如:浏览器,车载终端,安卓,IOS等等)打下坚实的基础。

这个步骤是不可或缺的

? 核心思想是前端html页面通过ajax调用后端的restuful api 接口并使用json数据进行交互。

前后端分离的优势:

1.可以实现真正的前后端解耦前端服务器使用nginx/tomact。前端/WEB服务器放的是css,js,图片等等一系列静态资源,前端服务器负责控制页面引用,跳转,路由

2.发现bug,可以快速定位是谁的问题,不会出现互相踢皮球的现象。页面逻 辑,跳转错误,浏览器兼容性问题,脚本错误,页面样式等问题,全部由前端工 程师来负责。接口数据出错,数据没有提交成功,应答超时等问题,全部由后端 工程师来解决。

3.减少后端服务器的压力。除了接口以外的其他所有的http请求全部转移到前端服务器上。

4.即使后端服务器暂时超时或者宕机了,前端页面也会正常访问只不过数据刷不出来而已

5.也许你也需要由微信相关的轻应用,那样你的接口完全可以公用,如果也有app相关的服务,那么只要通过一些代码重构,也可以大量复用接口,提升效率。(多端应用)

6.页面显示再多东西也不怕,因为是异步加载。

7.nginx支持页面热部署,不用重启服务器,前端升级更方便

8.增加代码的维护性和易读性(前后端混在一起的代码读起来相当费劲)

9.提升开发效率,因为可以前后端并行开发,而不是像以前的强依赖。

10.在nginx中部署证书,外网使用https访问,并且只开放443和80端口,其它端口一律关闭(防止黑客端口扫描),内网使用http,性能和安全都有保障

11.前端大量的组件代码得以复用,组件化,提升开发效率

MMVM

MMVM-> Model-View-ViewModel 的缩写。

View:视图层,也就是用户界面

Model:数据层,泛指后端进行的各种业务逻辑的处理和数据操控

ViewModel:视图数据层,用来同步View和Model

在MVVM的架构下,View和Model之间并没有直接的联系,而是通过ViewModel进行交互,Model和View之间的交互是双向的,因此View的数据的变化会同步到Model中,而Model数据的变化也会立即反应到View上

ViewModel 通过双向数据绑定把View和Model层连接起来,而View和Model之间的同步工作完全是自动的,无需人为干涉,因此开发者只需要关心业务逻辑,不需要手动操作DOM,不需要关注数据状态的同步问题

在这里插入图片描述