要应用的模式的详细信息

要应用的模式的样本是一个由八种模式组成的集合。其中多个模式在名称和功能上类似于为行业所接受的模式。* 其中一些模式被其他更高详细程度的模式使用,我们称之为微模式。

抽象工厂模式

(五个参数,五种参数依赖关系,重用一种模式)

该抽象工厂模式基于大家所熟知的抽象工厂模式。它重用接口模式,并因此在将行为授权至接口模式的过程中演示依赖关系代表。它是抽象工厂模式的一个退化实现,在该实现中,所有具体产品都实现所有已绑定的抽象产品接口。由于其他自变量绑定到模式,因此它将参数依赖关系的用法作为范例,以便维护模式语义。正如 Singleton 模式采用协作之外的其他形式来表示模式实例,此模式使用的是程序包。此模式的实例是程序包。

授权模式

(两个参数,一种参数依赖关系,重用三种模式)

授权模式具有两个参数:一个参数表示授权者,一个参数表示该授权模式中的代表。授权者将代表接口上定义并由授权者实现的操作授权至该代表类型的实例。此模式演示如何使用代表映射过滤器,以定制那些绑定到关键字列表模式复用实例的关键字的名称。虽然在提供授权模式的有用实现时并不需要此名称定制,但仍对此样本添加了该名称定制以便演示如何使用代表映射过滤器。

定向关联模式

(六个参数、五种参数依赖关系和一种微模式)

有向关联模式是另一种自包含基本模式 - 一种供其他更高详细程度的模式使用的微模式。有向关联模式具有两个用于设置有向关联上下文的主要参数。它具有其他五个外围参数,这些参数通过配置关联类型、角色名称和多重性来帮助形成这种关联。此模式供样本授权模式重用,而且是一个包括多个不太常用的参数类型的模式示例。文字串、整数和模式枚举在此模式的定义中使用。对于学习编写具有相同参数类型的模式的模式编写者而言,此样本中用于处理这些字面值和枚举的模式代码极为有用。

实现模式

(两个参数、一种参数依赖关系和一种微模式)

实现模式是一种基本模式,不仅自包含,而且不会在其实现中利用其他模式。它是一种非常简单的模式,确保从实现自变量到接口自变量都存在 UML 实现关系。

接口模式

(两个参数,一种参数依赖关系,重用一种模式)

接口模式是一种被其他少数样本模式复用的模式,此外,该模式还在其实现中重用一种模式。该实现模式是一种非常基本的模式(也称为微模式),供接口模式用于确保实现自变量可以实现接口自变量。接口模式具有两个参数,一个表示接口,一个表示实现。它包括一个通过模式定义用途和模式依赖关系代表来实现基本代表映射的示例。这是一种非常基本但相当实用的模式,在模式文档的其他部分中也会提到该模式。此模式还显示使用模式代表和定制代码来实现模式的依赖关系更新方法的组合。重用实现模式的目的是为了确保使用实现关系,然后使用定制更新方法代码来确保该实现可以对接口自变量实现所有定义的操作。

关键字列表模式

(两个参数、一种参数依赖关系和一种微模式)

关键字列表模式是一种基本模式,不仅自包含,而且不会在其实现中利用其他模式。此外,它还演示 UML 文字串和抽象 UML 元类型作为参数类型的用法。此模式还包括相应的功能以准确确保作为自变量的模式语义是非绑定的,而且模式实例未应用。虽然关键字列表模式可以用其自身的权限从“模式资源管理器”视图进行实例化,但它更适合于通过模式代表机制供其他模式重用。

Singleton 模式

(无参数)

该 Singleton 模式基于大家所熟知的 Singleton 模式。它是一个无参数模式示例。它有一个隐式参数,该参数可被视为模式实例自身。通常,模式将模式实例更多地表示为协作,但该 Singleton 模式将其模式实例表示为类。此模式的一种很实用的用法是将它从“模式资源管理器”视图拖动到一个要求确保为 Singleton 的类。将此模式拖动到图表面上(即拖入程序包中)将生成一个新的 Singleton 实例,并因此创建一个新的类来表示此实例。

策略模式

(三个参数,两种参数依赖关系,重用两种模式)

该策略模式基于大家所熟知的策略模式。它重用关键字列表和接口样本模式,并包含一个参数代表映射示例。它具有三个参数,分别表示策略接口、具体的策略和策略自身的上下文。为了演示关键字列表模式的复用,该模式应确保 <<Strategy>> 关键字在策略接口参数的自变量上是存在的。重用该接口模式的目的,是为了确保策略接口是由具体策略参数的绑定自变量实现的。

*设计模式:可重用的面向对象的软件元素,Gamma、Helm、Johnson 和 Vlissides (Addison-Wesley, 1995) copyright © 1995 by Addison-Wesley Publishing Company, Inc. All rights reserved.


反馈