2008-3-17 14:09:41 阅读(34) 评论(1)
Strategy模式的意图:定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。
Strategy模式:关键特征
意图: 让你可以使用不同的业务规则或算法——取决于它们出现的场景。
问题: 需要根据发出请求的客户或被处理的数据对算法作出选择。如果你只是拥有一些不发生变化的算法,你就
不需要Strategy模式。
解决方案: 将算法的选择和算法的实现相分离。让客户可以基于场景作出选择。
参与者与协作者: Strategy规定如何使用不同的算法。
ConcreteStrategies实现这些不同的算法。
2008-3-11 10:38:29 阅读(31) 评论(0)
Abstract Factory模式的意图是: 提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们的具体的类。
Abstract Factory模式:关键特征
意图:你需要为特定的客户(或情况)提供特定系列的对象。
问题:一系列相关的对象需要被实例化。
解决方案:协调不同系列对象的创建过程。提供一种方法保持如何在客户对象外部执行对象实例化的规则,
客户对象将使用这些实例化出来的对象。
参与者与协作者:AbstractFactory为如何创建需要的每个系列的对象定义接口。典型情况下,
2008-3-11 9:47:04 阅读(48) 评论(0)
Bridge模式的意图:将抽象部分与它的实现部分分离,使它们都可以独立地变化。
抽象部分:不同的事物在概念层次上的联系。
分离: 让各部分的行为各自独立,或至少显示指出关联。
实现部分:不是指实际构建抽象部分的方式,而是抽象类的对象和用来实现抽象类的派生类的对象。
Bridge模式:关键特征
意图: 将一组实现部分从另一组使用它们的对象中分离出来。
问题: 一个抽象类的派生类必须使用多种实现部分,但又不能引起类数量的爆炸。
2008-3-5 13:58:06 阅读(48) 评论(0)
Adapter模式的意图是:将一个类的接口转换成客户希望的另外一个接口。Adapter模式使原本由于接口不兼容而不能一起工作的那些类可以一起工作。是为一个内容合适但接口不匹配的对象创建一个新的接口的方法。Adapter模式最通常的用途就是保持多态。
Adapter模式:关键特征
意图: 将一个无法控制的现有对象与一个特定接口想匹配。
问题: 一个系统拥有正确的数据和行为,但接口却是错误的。典型用途:你必须吧某些东西实现为我们
2008-3-5 11:11:43 阅读(24) 评论(0)