MVC
来源:互联网 发布:qq视频录像软件注册码 编辑:程序博客网 时间:2024/04/30 08:10
MVC是一种流行的程序架构,获得C#、Java、PHP、Ruby等多种语言的支持。MVC
是 模型(Model) 、视图(View)、控制器(Control) 的英文首字母的缩写,核心思想是
:视图和用户交互,通过事件导致控制器改变,控制器改变导致模型改变或者控制器
同时改变两者(视图和模型), 模型改变导致视图改变,或者视图改变潜在的从模型
里面获得参数来改变自己。
MVC(Model-View-Controller),即把一个应用的输入、处理、输出流程按照
Model、View、Controller的方式进行分离,这样一个应用被分成三个层——模型层
、视图层、控制层。MVC一个大的好处是它能为你的应用程序处理很多不同的视图。
在视图中其实没有真正的处理发生,不管这些数据是联机存储的还是一个雇员列表,
作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。
视图(View):代表用户交互界面,MVC设计模式对于视图的处理是限于视图上数据的
采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。
模型(Model):业务流程/状态的处理以及业务规则的制定。业务流程的处理过程对其
它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。业务模型
的设计可以说是MVC的核心。被模型返回的数据是中立的,就是说模型与数据格式无
关,这样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可以
被多个视图重用,所以减少了代码的重复性。
控制(Controller):可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成
用户的请求,但是它却不做任何的数据处理。
它的优势在与:开发人员可以只关注整个结构中的其中某一层,可以很容易的用新的
实现来替换原有层次的实现,可以降低层与层之间的依赖,有利于标准化,利于各层
逻辑的复用
MVC模式的缺点是由于它没有明确的定义,所以完全理解MVC模式并不是很容易。使
用MVC模式需要精心的计划,由于它的内部原理比较复杂,所以需要花费一些时间去
思考。开发一个MVC模式架构的工程,将不得不花费相当可观的时间去考虑如何将
MVC模式运用到应用程序中,同时由于Model和 View 要严格的分离,这样也给调试
应用程序带来了一定的困难。每个构件在使用之前都需要经过彻底的测试。另外由于
MVC模式将一个应用程序分成了三个部件,所以这意味着同一个工程将包含比以前更
多的文件。
过去MVC模式并不适合小型甚至中等规模的应用程序,这样会带来额外的工作量,增
加应用的复杂性。但现在多数软件设计框架,能直接快速提供MVC骨架,供中小型应
用程序开发,此问题不再存在。对于开发存在大量用户界面,并且逻辑复杂的大型应
用程序,MVC将会使软件在健壮性、代码重用和结构方面上一个新的台阶。尽管在最
初构建MVC模式框架时会花费一定的工作量,但从长远的角度来看,它会大大提高后
期软件开发的效率。
是 模型(Model) 、视图(View)、控制器(Control) 的英文首字母的缩写,核心思想是
:视图和用户交互,通过事件导致控制器改变,控制器改变导致模型改变或者控制器
同时改变两者(视图和模型), 模型改变导致视图改变,或者视图改变潜在的从模型
里面获得参数来改变自己。
MVC(Model-View-Controller),即把一个应用的输入、处理、输出流程按照
Model、View、Controller的方式进行分离,这样一个应用被分成三个层——模型层
、视图层、控制层。MVC一个大的好处是它能为你的应用程序处理很多不同的视图。
在视图中其实没有真正的处理发生,不管这些数据是联机存储的还是一个雇员列表,
作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。
视图(View):代表用户交互界面,MVC设计模式对于视图的处理是限于视图上数据的
采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。
模型(Model):业务流程/状态的处理以及业务规则的制定。业务流程的处理过程对其
它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。业务模型
的设计可以说是MVC的核心。被模型返回的数据是中立的,就是说模型与数据格式无
关,这样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可以
被多个视图重用,所以减少了代码的重复性。
控制(Controller):可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成
用户的请求,但是它却不做任何的数据处理。
它的优势在与:开发人员可以只关注整个结构中的其中某一层,可以很容易的用新的
实现来替换原有层次的实现,可以降低层与层之间的依赖,有利于标准化,利于各层
逻辑的复用
MVC模式的缺点是由于它没有明确的定义,所以完全理解MVC模式并不是很容易。使
用MVC模式需要精心的计划,由于它的内部原理比较复杂,所以需要花费一些时间去
思考。开发一个MVC模式架构的工程,将不得不花费相当可观的时间去考虑如何将
MVC模式运用到应用程序中,同时由于Model和 View 要严格的分离,这样也给调试
应用程序带来了一定的困难。每个构件在使用之前都需要经过彻底的测试。另外由于
MVC模式将一个应用程序分成了三个部件,所以这意味着同一个工程将包含比以前更
多的文件。
过去MVC模式并不适合小型甚至中等规模的应用程序,这样会带来额外的工作量,增
加应用的复杂性。但现在多数软件设计框架,能直接快速提供MVC骨架,供中小型应
用程序开发,此问题不再存在。对于开发存在大量用户界面,并且逻辑复杂的大型应
用程序,MVC将会使软件在健壮性、代码重用和结构方面上一个新的台阶。尽管在最
初构建MVC模式框架时会花费一定的工作量,但从长远的角度来看,它会大大提高后
期软件开发的效率。
0 0
- MVC
- mvc
- MVC
- mvc
- MVC
- MVC
- mvc
- MVC
- MVC
- MVC
- MVC
- MVC
- MVC
- MVC
- MVC
- mvc
- MVC
- MVC
- DBus 入门与应用 -- DBus 的 C 编程接口
- IDR--Integer ID Management
- ubuntu14.04交叉编译vlc2.1.5源码,编译出在win32下运行的程序
- word2vec
- vi/vim 快捷键
- MVC
- 开博第一天!
- 将指定的计数添加到该信号量中会导致其超过最大计数
- 游戏瞄准的一个AI算法
- ERROR:NgdBuild:604 - logical block 'Inst_edksub/proc_sys_reset_0' with type 'proc
- 巴菲特致股东的一封信:1995年
- LDAP安装配置
- 设计用户、角色、权限表
- 编程珠玑:位图法排序&搜索