51Testing软件测试论坛

标题: MVC设计模式 [打印本页]

作者: ppyeer    时间: 2005-3-11 13:05
标题: MVC设计模式
MVC设计模式
  模型-视图-控制器(Model-View-Controller,MVC)模式是一种拆分方法,它将应用程序拆分成三个部分:模型、视图和控制器。其中模型表示企业数据管理对该数据的访问和更新的业务规则。通常,模型充当现实世界中的过程的软件模拟,这样,在定义模型的时候即可以应用真实世界的建模技术。视图处理模型的内容。它通过模型访问企业数据,并指定应该如何表示该数据。在模型发生改变时,视图将负责在它的表示中保持一致性。这可以通过使用推(Push)模型(视图向该模型注册,以获取它的改变通知)来实现,也可以用拉(Pull)模型(此时视图负责在需要检索最新数据时调用模型)来实现。控制器将和视图之间的交互转换为由模型执行的操作。在独立的 GUI 客户机中,用户交互可能是按钮单击或菜单选择,然而在 Web 应用程序中,它们则可能是 GET 和 POST HTTP 请求。由模型执行的操作包括激活业务流程或改变模型状态。控制器根据用户交互和模型操作的结果选择合适的视图,从而作出响应。采用MVC 体系结构有以下优势:
1.多个视图使用同一个模型。模型和视图的分开使多个视图可以使用相同的企业模型。因此,企业应用程序的模型组件就更容易实现、测试和维护,因为所有对模型的访问都要经过这些组件。
2.对客户机新类型更容易支持。要支持客户机的新类型,您只需为其编写一个视图和控制器,然后在已有的企业模型中将它们进行连接即可。
  在国际业务系统设计中,表现逻辑(即客户端)、业务逻辑(即业务处理层)、数据库访问、通讯服务设计是相互分离和独立的。一方面,它符合组件化的设计思想;另一方面,它便于各部分的模型化。特别是表现逻辑在不同客户端各具特色,但它们使用的业务和数据却可以是相同的。在业务调度模块和各个渠道之间传送的XML信息就是这些业务和数据信息的统一载体。反过来说,相同的业务和数据可以有不同的表现形式,从一定程度体现了系统的灵活性。
作者: yayapang    时间: 2005-9-26 10:04
好高深的东西,有没有例子?
作者: LinkLJ    时间: 2006-1-11 20:34
这里有挺多的介绍
http://tech.ccidnet.com/pub/series/s116.html
作者: jacosun    时间: 2006-7-28 15:04
sdlkfj3 够专业了!
作者: r_sunny    时间: 2006-12-27 17:03
sdlkfj3 呵呵...如此熟悉!
作者: tiangou99073    时间: 2007-7-26 19:17
正在自学中
作者: 正道    时间: 2007-10-16 21:27
M:Model 模型   业务层
V:View    视图   显示层
C:Controller  控制  逻辑层
作者: 正道    时间: 2007-10-26 09:16
Spring 竟然也有MVC
作者: TT520    时间: 2010-11-13 11:07
要向测试架构师发展,是否也需要了解这些东西啊?
作者: bingdian887521    时间: 2011-10-9 12:38
mvc模式弊端很多呀,寻求一种更好的模式
作者: haha_faraway    时间: 2012-9-6 09:40
我也想了解一下!呵呵
作者: loolan    时间: 2013-3-21 10:44
模式不是都适用于所有场景的。具体的问题具体分析选择合适的架构和模式
作者: jxqsyd    时间: 2014-3-3 16:21

作者: 宁波德萨    时间: 2014-6-28 09:01
知道了 ~~~
作者: 知识富国强民    时间: 2015-10-11 07:48
mvc  的模式支持有jsp,struts2, spring等框架
v:试图层,用jsp,freemarker,velicity 等都可以
c:控制层,一般为servlet
m: 实例层,就是实体类,数据库层。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2