设计模式 可复用面向对象软件的基础 读者指南

设计模式 可复用面向对象软件的基础 读者指南

本书包括两个主要部分:

  • 第一部分(第1章和第2章)介绍了什么是设计模式以及它如何帮助你设计面向对象的软件系统。该部分包含了一个设计案例研究,展示了如何将设计模式应用于实际工作。
  • 第二部分(第3、4、5章)则是实际设计模式的分类描述。

设计模式的分类

模式的分类描述构成了本书的主要部分,书中的章节根据模式的性质将其划分为三种类型:

  1. 创建型(creational),
  2. 结构型(structural)
  3. 行为型(behavioral)。

可以从多个角度使用这个模式分类描述,例如,你可以从头至尾地阅读每一个模式,也可以随机浏览其中的任何个模式。另外一种方法是研究其中的一章,这将有助于理解原本密切关联的模式如何相互区分。
模式描述中的交叉引用将给你提供寻找其他相关模式的逻辑路径,它将帮助你看清楚模式是如何相互关联的、一个模式怎样与其他模式进行组合、以及哪些模式能在一起工作。图1-1将用图示方法展现这种关系。
阅读模式分类描述的另一种方法是问题导向法,你可以翻到书中的第1.6节查找有关设计可复用的面向对象系统过程中经常见到的问题,然后阅读解决这些问题的有关模式。有些读者首先通读模式分类描述,然后运用问题导向的方法将模式应用于他们的项目之中。

  • Abstract Factory (3.1)
  • Adapter(4.1)
  • Composite(4.3)
  • Decorator(4.4)
  • Factory Method (3.3)
  • Observer(5.7)
  • Strategy(5.9)
  • Template Method (5.10)

很难找到一个面向对象软件系统,它没有使用书中描述的若干模式。许多大型软件系统几乎用到了所有的这些模式。上述这组模式将有助于你进一步理解设计模式本身及一般意义下的优秀的面向对象设计。