成功应用程序的模式(6)

1.3.4  Web表示模式

在第8章中,将注意力转向企业级ASP.NET应用程序的表示需求。这一章关注的是专门用来让业务逻辑与表示逻辑分离的模式。首先,将介绍早期Web表单开发中普遍使用的代码隐藏模型带来的问题;然后研究那些能够将领域和表示逻辑分离同时让表示层能够有效测试的模式。

这些模式的任务都是将用于表示的逻辑关注点与业务逻辑关注点分离。ASP.NET表示需要所涵盖的模式有:

●  Model-View-Presenter(模型-视图-表示器)。

●  Model-View-Controller(模型-视图-控制器)。

●  Front Controller(前端控制器)。

●  Page Controller(页面控制器)。

1.3.5  基本模式、行为模式和结构模式

在本书中,将介绍如何在企业ASP.NET应用程序中利用Fowler著作中的其他企业模式。这些模式将包括Null Object(空对象)、Separated Interface(独立接口)、Registry(注册表)和Gateway(网关)。

1. Null Object模式

Null Object(空对象)模式也称为Special Case(特殊情况)模式,它充当返回值而不是向调用代码返回null。空对象将与预期结果共享相同的接口或者从相同的基类继承而来,这样减少了在代码基中到处检查null情况的需要。

2. Separated Interface模式

Separated Interface(独立接口)模式要求将接口放在一个独立于具体实现的程序集或命名空间中。这确保客户端完全不知道具体实现,而且能够遵循面向抽象编程(而不是面向实现)以及依赖倒置原则。

3. Gateway模式

Gateway(网关)模式允许客户端通过一个简化的接口来访问复杂的资源。网关对象基本上将资源API包装成一个能够在应用程序中到处使用的单个方法调用。此外,它还隐藏了所有的API复杂性。

这里介绍的所有企业模式都将在本书中更详细地进行讨论,并有配套练习来演示如何在ASP.NET方案中实现它们。1.4节是本章最后一部分,简要介绍一些设计方法学,以及运用本章中已经介绍的模式和原则的实践。

读书导航