博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
表现与数据分离(MV*)
阅读量:7225 次
发布时间:2019-06-29

本文共 576 字,大约阅读时间需要 1 分钟。

1.表现与数据分离

 

图形界面程序:程序把数据通过图形展示给用户,用户通过操作修改数据,然后把修改的数据展现给用户。

为了更好的管理程序的复杂性,把图形界面与图形数据分离开来(解耦),实现职责分离,即为表现与数据分离。把管理用户界面的层次称为View,应用程序的数据为Model(包括数据以及对数据的直接操作)。

 

 

2.需要把view与model粘合在一起,出现了MV*模式

 

(1)MVC(Model-View-Controller)模式

 

  操作View后,Controller更新Model,Model更新后通过观察者模式更新View。

 

 

 

(2)MVP(Model-View-Presenter)模式

 

  View与Model 通过Presenter通信,操作View后通过Presenter更新Model,Model更新后通过Presenter更新Model。

 

 

 

(3)MVVM(Model-View-ViewModel)模式

 

   Model更新后ViewModel自动同步View,操作view后ViewModel自动同步Model。不需要像Presenter手动同步Model和View。

 

 

 

MVC->MVP->MVVM是一个不断优化的过程!

转载于:https://www.cnblogs.com/fe-huahai/p/5441630.html

你可能感兴趣的文章
面试题:给你个id,去拿到name,多叉树遍历
查看>>
go append函数以及写入
查看>>
关于Java中分层中遇到的一些问题
查看>>
配置 PM2 实现代码自动发布
查看>>
android百种动画侧滑库、步骤视图、TextView效果、社交、搜房、K线图等源码
查看>>
iOS仿今日头条、壁纸应用、筛选分类、三方微博、颜色填充等源码
查看>>
诡异!React stopPropagation失灵
查看>>
Python_OOP
查看>>
个人博客开发系列:评论功能之GitHub账号OAuth授权
查看>>
mongodb--安装和初步使用教程
查看>>
ES6简单总结(搭配简单的讲解和小案例)
查看>>
text-decoration与color属性
查看>>
如何使用Mybatis第三方插件--PageHelper实现分页操作
查看>>
PyCharm搭建GO开发环境(GO语言学习第1课)
查看>>
Android交互
查看>>
提醒我喝水chrome插件开发指南
查看>>
列表数据转树形数据
查看>>
Java新版本的开发已正式进入轨道,版本号18.3
查看>>
从零开始的webpack生活-0x009:FilesLoader装载文件
查看>>
在electron中实现跨域请求,无需更改服务器端设置
查看>>