MVC和MVVM

MVC

Model层:用于处理应用程序数据逻辑的部分,通常负责在数据库中存取数据

**View(视图)**处理数据显示的部分。通常视图是依据模型数据创建的

**Controller(控制器)**是处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。

Controller是MVC中的数据和视图的协调者,也就是在Controller里面把Model的数据赋值给View来显示(或者是View接收用户输入的数据然后由Controller把这些数据传给Model来保存到本地或者上传到服务器)

MVC中的通讯

各部分之间的通信方式如下,所有通讯都是单向的 。

  1. View 传送指令到 Controller

  2. Controller 完成业务逻辑后,要求 Model 改变状态

  3. Model 将新的数据发送到 View,用户得到反馈

MVVM

Model 称为数据层,因为它仅仅关注数据本身,不关心任何行为

View层代表的是视图、模版,负责将数据模型转化为UI展现出来。

ViewModel

MVVM模式的核心,它是连接view和model的桥梁。它有两个方向:

  1. 将Model转化成View,即将后端传递的数据转化成所看到的页面。实现的方式是:数据绑定

  2. 将View转化成Model,即将所看到的页面转化成后端的数据。实现的方式是:DOM 事件监听

相关推荐
梦想不只是梦与想15 小时前
鸿蒙 应用市场更新功能:版本检测与更新提醒
harmonyos·鸿蒙·版本更新
UnicornDev21 小时前
【HarmonyOS 6】底部悬浮导航的沉浸光感适配(API23)
华为·harmonyos·arkts·鸿蒙·鸿蒙系统
三声三视2 天前
ArkTS 性能优化实战:从卡顿分析到高帧率应用全攻略
华为·性能优化·harmonyos·鸿蒙
Cyan_RA92 天前
SpringMVC REST 详解
java·spring·mvc·springmvc·restful·jquery·jsp
小成Coder4 天前
【Jack实战】如何给《时光旅记》接入跨设备拍照和跨设备相册导入
华为·harmonyos·鸿蒙·码上创新
三声三视4 天前
ArkTS Navigation 路由实战:从 Router 迁移到 NavPathStack,打造企业级路由体系
华为·harmonyos·鸿蒙
budingxiaomoli5 天前
Spring Web MVC 知识总结
spring·mvc
_waylau5 天前
HarmonyOS 6.0升级至6.1改动点
华为·ai·harmonyos·鸿蒙·鸿蒙系统
仓颉编程语言5 天前
Cangjie 1.1.0 正式发布,支持 Android/iOS 跨平台运行,中心仓正式上线 | STS Beta 测试活动获奖名单公示
华为·鸿蒙·仓颉编程语言
虾米Life6 天前
MVC与MVVM 架构
架构·mvc·mvvm