怎样使用设计模式

应用设计模式的方法

应用设计模式的循序渐进的方法:

  1. 大致浏览一遍模式 特别注意其适用性部分和效果部分,确定它适合你的问题。
  2. 回头研究结构部分、参与者部分和协作部分 确保你理解这个模式的类和对象以及它 们是怎样关联的。
  3. 看代码示例部分,看看这个模式代码形式的具体例子 研究代码将有助于你实现模式。
  4. 选择模式参与者的名字,使它们在应用上下文中有意义 设计模式参与者的名字通常过于抽象而不会直接出现在应用中。然而,将参与者的名字和应用中出现的名字合并起来是 很有用的。这会帮助你在实现中更显式的体现出模式来。例如,如果你在文本组合算法中使 用了Strategy模式,那么你可能有名为SimpleLayoutStrategy或TeXLayoutStrategy这样的类。
  5. 定义类 声明它们的接口,建立它们的继承关系,定义代表数据和对象引用的实例变 量。识别模式会影响到的你的应用中存在的类,做出相应的修改。
  6. 定义模式中专用于应用的操作名称 这里再一次体现出,名字一般依赖于应用。使用 与每一个操作相关联的责任和协作作为指导。还有,你的名字约定要一致。例如,可以使用 “Create-”前缀统一标记Factory方法。
  7. 实现执行模式中责任和协作的操作 实现部分提供线索指导你进行实现。代码示例部 分的例子也能提供帮助。

设计模式的使用限制

设计模式不能够随意使用。

通常你通过引入额外的间接层次获得灵活性和可变性的同 时,你也使设计变得更复杂并 /或牺牲了一定的性能。

一个设计模式只有当它提供的灵活性是 真正需要的时候,才有必要使用。