MVC和MVVM的差别
2024-08-26 09:33:36
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
MVVM是Model-View-ViewModel的简写。它本质上就是MVC 的改进版。MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开。当然这些事 ViewModel 已经帮我们做了,它可以取出 Model 的数据同时帮忙处理 View 中由于需要展示内容而涉及的业务逻辑。微软的WPF带来了新的技术体验,如Silverlight、音频、视频、3D、动画……,这导致了软件UI层更加细节化、可定制化。同时,在技术层面,WPF也带来了 诸如Binding、Dependency Property、Routed Events、Command、DataTemplate、ControlTemplate等新特性。MVVM(Model-View-ViewModel)框架的由来便是MVP(Model-View-Presenter)模式与WPF结合的应用方式时发展演变过来的一种新型架构框架。它立足于原有MVP框架并且把WPF的新特性糅合进去,以应对客户日益复杂的需求变化。
最新文章
- 做JavaWeb开发不知Java集合类不如归家种地
- 对Linux(Unix)的基础知识归纳
- compact过滤数组中的nil
- CSS笔记(十三)CSS3之过渡
- mysql数据库连接池 手动编写
- Mina学习之IoFilter
- thinkphp实现模糊匹配(学习贵哥代码)
- java applet初探之计算器
- 利用pip批量更新python库
- Spring学习(零):我们为什么要学习Spring
- web 10
- mybatis一级缓存
- js中html拼接
- 转 $(document).ready()与window.onload的区别
- 使用libvirt管理KVM(一)
- 自学QT之qss教程
- shell 脚本实战笔记(9)--linux自动批量添加用户
- ZJOI2018 round^2 游记
- IP地址工具类
- Jmeter中的逻辑控制器(四)
热门文章
- 题解 CF1375E Inversion SwapSort
- P4085 [USACO17DEC]Haybale Feast
- Windows的API功能查询
- 三、git学习之——管理修改、撤销修改、删除文件
- 终于不再对transition和animation,傻傻分不清楚了 --vue中使用transition和animation
- 确定Linux系统位数
- ORA-29701: unable to connect to Cluster Synchronization Service
- Linux命令-1.远程登录
- #2020征文-手机#深鸿会深大小组:HarmonyOS手机游戏—数字华容道
- Java与C#