Wingedox

自己记录学习笔记的地方

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

    MVP 设计模式使得将逻辑和代码从 UI 层分离,UI 层和表示层使用不同的软件包,一个项目的 UI 层只应由两种 UI 元素组成 — 窗体和控件。在 Web Forms 项目中,通常是 ASP.NET Web Forms、用户控件和服务器控件的集合。在 Windows Forms 中,是 Windows Forms、用户控件和第三方程序库的集合。附加的Presenter层用于分离显示和逻辑。在表示层中可以有实际实现 UI 行为的对象,如验证显示、UI 的集合输入等。

MVP_fig01 MVP_fig03

表示器并不了解应用程序实际 UI 层的任何知识。它知道它可以与接口对话,但不知道也不关心接口的具体实现。这就促使了在不同 UI 技术间表示器的重用。Presenter也变得Testable——引入MVP的终极目标。

 untitled

例子:

image17D image25D

两套UI的实现:

winform: class CalculateForm : Form, ICalculateForm

webform: class _Default : System.Web.UI.Page, ICalculateForm

并实例化Presenter 类: CalculateFormPresenter

使用该简单灵活的方式,无论是那种界面均可很方便的移植.

posted on 2007-07-27 21:19  想飞的黄牛  阅读(1047)  评论(0编辑  收藏  举报