理解的可能不太全面,有会的大佬评论多给留个言呗
MVC
M:module模块--->数据源
V:view视图-->用户界面
C:controller控制器-->操作数据到视图
图解
1.View 传送指令到 Controller
2.Controller 完成业务逻辑后,要求 Model 改变状态
3.Model 将新的数据发送到 View,用户得到反馈
MVC允许在不改变视图的情况下改变视图对用户输入的响应方式
用户对View的操作交给了Controller处理,在Controller中响应View的事件调用Model的接口对数据进行操作,一旦Model发生变化便通知相关视图进行更新。
MVVM
M:module模块--->数据源
V:view视图
VM:既能操作数据到视图,又能从视图获取数据
图解
view发生交互时通过ViewModel改变Model,再将Model返回到ViewModel改变View,断开了View和Model的直接连接;
所以MVVM是一个双向
ViewModel就像一个中间人,很多逻辑都在ViewModel上去执行