设计模式--分类
?
?
?
本文根据:http://www.cnblogs.com/justForMe/archive/2011/07/18/2109211.html文章整理
23种设计模式分类
一、 创建型设计模式:社会化的分工越来越细,自然在软件设计方面也是如此,因此对象的创建和对象的使用分开也就成为了必然趋势。此类模式主要提供对象初始化的解决方案。对象的创建会消耗掉系统的很多资源,所以单独对对象的创建进行研究,从而能够高效地创建对象就是创建型模式要探讨的问题。
?1. ?单例模式 Singleton
2. ? ? ? 抽象工厂 Abstract Factory
3. ? ? ? 工厂方法 Factory Method
4. ? ? ? 建造模式 Builder
5. ? ? ? 原型模式 Prototype
?
二、结构型设计模式:在解决了对象的创建问题之后,对象的组成以及对象之间的依赖关系就成了开发人员关注的焦点,因为如何设计对象的结构、继承和依赖关系会影响到后续程序的维护性、代码的健壮性、耦合性等。对象结构的设计很容易体现出设计人员水平的高低,这里有7个具体的结构型模式可供研究,它们分别是:
6. ? ? ? 组合模式 Composite
7. ? ? ? 外观模式 Facade
8. ? ? ? 代理模式 Proxy
9. ? ? ? 适配器模式 Adapter
10. ? 装饰模式 Decorator
11. ? 桥联模式 Bridge
12. ? 享元模式 Flyweight
?
三、行为型设计模式:在对象的结构和对象的创建问题都解决了之后,就剩下对象的行为问题了,如果对象的行为设计的好,那么对象的行为就会更清晰,它们之间的协作效率就会提高,这里有11个具体的行为型模式可供研究,它们分别是:
13. ? 迭代器 Iterator
14. ? 观察者 Observer
15. ? 模版方法 Template Method
16. ? 命令 Command
17. ? 状态 state
18. ? 策略 Strategy
19. ? 职责链 Chain of Responsibility
20. ? 中介者 Mediator
21. ? 访问者 Visitor
22. ? 解释器 Interpreter
23. ? 备忘录 Memento