《设计模式:可复用面向对象软件的基础》()是软件工程领域有关设计模式的一本书,提出和总结了对于一些常见软件设计问题的标准解决方案,称为软件设计模式。该书作者是埃里希·伽瑪、、和,后以“四人帮”(,)著称,书中的设计模式也被称為「四人帮设计模式」(Gang of Four design patterns)。
简介
基于作者的经验,本书提出良好的面向对象软件设计所需方略为:
- “针对接口而非实现编程”。
- :“偏好超过了类继承”。
创建型模式
创建型模式是创建对象而不直接实例化对象的设计模式。这给予编程者在决定那些对象于给定情况下需要被创建时更大的灵活性。
- 抽象工厂 (Abstract Factory Pattern)
- 建造者 (Builder Pattern)
- 工厂方法 (Factory Method pattern)
- 原型 (Prototype pattern)
- 单例 (Singleton pattern)
结构型模式
结构型模式关注类和对象的合成。本书使用继承来合成接口,并且定义了合成对象来获得新功能的方式。
- 适配器(Adapter pattern)
- 桥接(Bridge pattern)
- 合成(Composite pattern)
- 装饰(Decorator pattern)
- 门面(Facade pattern)
- 享元(Flyweight pattern)
- 代理(Proxy pattern)
行为型模式
行为型模式大多特别关注于对象之间的通信。
- 责任链(Chain-of-responsibility pattern)
- 命令(Command pattern)
- 解释器(Interpreter pattern)
- 迭代器(Iterator pattern)
- 中介者(Mediator pattern)
- 备忘录(Memento pattern)
- 观察者(Observer pattern)
- 状态(State pattern)
- 策略(Strategy pattern)
- 模板方法(Template method pattern)
- 访问者(Visitor pattern)
参考文献
外部链接
- [https://web.archive.org/web/20041206053050/http://lci.cs.ubbcluj.ro/~raduking/Books/Design%20Patterns/ Design Patterns CD: Elements of Re-usable Object-Oriented Software] The entire book online, updated by the authors for CD.
- [https://web.archive.org/web/20060924103423/http://www.eden-study.org/precise_and_formal/ Formal And Precise Software Pattern Representation Languages] A bibliography
- [http://tal.forum2.org/hatching Pattern Hatching]
- [https://web.archive.org/web/20060924104423/http://www.eden-study.org/lepus/ LePUS] A formal language for describing and reasoning about design patterns
- [http://msdn.microsoft.com/practices Microsoft patterns & practices Home]
评论 (0)