APP下载

应用MVP模式改进软件架构

2012-04-29王念桥

计算机时代 2012年4期
关键词:模式

王念桥

摘要: 模型-视图-控制器 (MVC) 模式是一个框架级的设计模式,该模式将软件设计中的关注点分离开来,从而使程序更有弹性。随着软硬件的发展,基于MVC模式演化出了一些相关模式。模型-视图-表示器 (MVP) 模式就是由MVC演变而来。文章将首先介绍了可能的MVP模式的实现方法,然后讨论了该模式的应用,以及所带来的益处。

关键词: 模式; MVC; MVP; 软件架构

中图分类号:TP302.1文献标识码:A文章编号:1006-8228(2012)04-37-02

Improving software architecture with MVP mode

Wang Nianqiao

(Wuhan technical college, department of electronic & information,Hubei, Wuhan 430074, China)

Abstract: Applying the Model-View-Controller (MVC) mode shows that designing applications with different concerns makes programs more flexible. Several variations of it appeared over the years, and one of those is the Model-View-Presenter (MVP). In this article, one possible implementation of the MVP mode, its application and its benefits will be introduced.

Key words: mode; MVC; MVP; software architecture

1 MVP 概览

MVP演变自MVC[1],通过表示器将视图与模型巧妙地分开。在该模式中,视图通常由表示器初始化,它呈现用户界面(UI)并接受用户所发出命令,但不对用户的输入作任何逻辑处理,而仅仅是将用户输入转发给表示器。通常每一个视图对应一个表示器。表示器包含大多数表示逻辑,用以处理视图,与模型交互以获取或更新数据等。模型描述了系统的处理逻辑,模型对于表示器和视图一无所知。

[View][Presenter][Model]

图1MVP 模式

MVP 中表示器通过接口(当然也可能是抽象基类)与视图交互[2,3]。采用这种方案可以使表示器自身成为一个可重用性和可测试性均很高的类。首先,表示逻辑独立于所使用的UI技术,因此,可在Windows和Web表示层中重用同一表示器。其次,针对某一接口为表示器编码,该表示器可以与实现该接口的任何对象交互,而实现该接口的可能是 Windows窗体对象、ASP.NET页面对象或者WPF窗口对象,这意味着只要视图接口不变,视图的任何更新都不会影响到表示器。再者,同一表示器可以处理同一应用程序的不同视图。……

登录APP查看全文

猜你喜欢

模式
关于师幼互动的文献综述
浅析应用技术型院校大学生创新创业教育的模式探索与实践
从《后窗》看希区柯克作品的人性怀疑论
以市场为导向的经济管理模式转变分析
浅议信息化管理对会计的影响
珠三角西岸精密制造产业新城规划及公共服务平台构建
基于产业需求的数字媒体技术专业人才培养模式研究
高端饭店业产学研模式研究
永续债券探析
思想政治理论课实践教学研究述评