博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MVC 编程模型及其变种
阅读量:4984 次
发布时间:2019-06-12

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

MVC 编程模型及其变种

MVC全称是Model View Controller, 这是一个模型(model)-查看(view)-调节器(controller)缩写,这是通过通用的编程模型非.MVC当为了分离数据和视图首次提出,数据和实体之间的关系.这就是关注点分离的设计理念,也是单一职责原则(Single-Resposibility Principle).

在我们的开发过程中, 视图用来展现界面, 我们的模型处理业务, 持有数据, 而控制器是他们之间的中间人.

GoF四人组觉得MVC是"一组用于构建用户界面的类的集合,是其他三个经典的设计模式的演变:观察者模式, 策略模式, 组合模式".详细的实现可能还会用到工厂模式,装饰器模式

以下介绍一下MVC及其变种

VC模式(view --> controller)

这样的模式用于简单的界面,代码量不多的情况.一般业务代码都是控制器里.

  1. 用户点击屏幕,传递一个点击事件给视图
  2. 视图把点击事件传递给控制器
  3. 控制器运行逻辑
  4. 控制器把新的数据返回给视图
  5. 视图展示新的数据给用户

VMC模式(view --> model --> controller)

这样的模式以下,视图先传递的对象是模型,模型能处理的话,根本就不通知控制器,能够减轻控制器的代码量

  1. 用户点击屏幕, 传递一个点击事件给视图
  2. 视图把点击事件传递给模型
  3. 模型处理点击事件
  4. 模型处理不了的和额外要处理的发消息给控制器
  5. 控制器运行逻辑
  6. 控制器把数据返回给模型
  7. 模型再把数据返回给视图
  8. 视图展示新的数据给用户

VCM模式(view --> controller --> model)

这样的就是我们最常见的mvc模式了

  1. 用户点击屏幕, 传递一个点击事件给视图
  2. 视图把点击事件传递给控制器
  3. 控制器调用模型
  4. 模型运行逻辑
  5. 模型通知控制器,并返回数据
  6. 控制器接到数据后返回给视图
  7. 视图展示新数据

事实上,折腾这些,最后目的是了解边界,因此,人们可以并行工作.

版权声明:本文博主原创文章。博客,未经同意不得转载。

转载于:https://www.cnblogs.com/bhlsheji/p/4814619.html

你可能感兴趣的文章
50个必备的实用jQuery代码段
查看>>
wikioi--1044 拦截导弹
查看>>
Python 中的类与对象 初认识
查看>>
追逐学长的背影 - 2015年12月
查看>>
如何区分Python package
查看>>
vue-router重定向 不刷新问题
查看>>
反向传播算法1)
查看>>
crontab格式,命令
查看>>
P3097 [USACO13DEC]最优挤奶Optimal Milking
查看>>
[Groovy] List里的Inject方法
查看>>
技术随感
查看>>
第一百零三天 how can I 坚持
查看>>
第三百零三天 how can I 坚持
查看>>
Java并发编程学习笔记 深入理解volatile关键字的作用
查看>>
hdu 1828 Picture(线段树)
查看>>
JAVA学习第十四课(接口:implements及其基本应用)
查看>>
infopath使用中遇到的几个小问题
查看>>
一些有用的ubuntu命令总结---长期更新
查看>>
CAS原理分析
查看>>
使用unetbootin将Linux安装到U盘
查看>>