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 事件监听

相关推荐
M-Robots echo7 小时前
M-CLAW,面向具身智能的机器人任务编排开发框架
机器人·ros·鸿蒙·开源社区·m-robots
M-Robots echo8 小时前
王成录:机器人产业下一个十年,拼的是 “系统级智能化” 而非单点算法堆叠
机器人·ros·鸿蒙·开源社区·m-robots·王成录
M-Robots echo14 小时前
M-Robots ROS 兼容适配方案,实现存量机器人项目低成本迁移
机器人·ros·鸿蒙·开源社区·m-robots
UnicornIT20 小时前
【HarmonyOS】时间管理类APP:做成“自适应“
ui·华为·harmonyos·鸿蒙
OH_TPC1 天前
HarmonyOS APP开发---“滤镜大师“图像处理App,需要用到这个库
java·图像处理·华为·harmonyos·鸿蒙
2501_919749031 天前
华为鸿蒙管理密码APP—小羊密码
华为·harmonyos·鸿蒙
笔触狂放2 天前
第2章 ArkTS(上)
华为·harmonyos·鸿蒙
M-Robots echo2 天前
王成录:黑客松不只是赛事,是开源机器人生态快速试错、挖掘创新的试验场
机器人·ros·鸿蒙·具身智能·开源社区·m-robots
OH_TPC2 天前
【鸿蒙优选三方库】@ohos/mpchart:让 HarmonyOS 应用的数据可视化开箱即用
华为·信息可视化·harmonyos·鸿蒙
轻口味3 天前
端侧 AI 赋能鸿蒙版 Obsidian:轻规划基于 HarmonyOS 7.0 图像超分特性的体验突破与开发实战
人工智能·华为·harmonyos·鸿蒙