无废话C#设计模式之二十二:总结(针对GOF23)2010-01-13 博客园 lovecherry比较
| 设计模式 | 常用程度 | 适用层次 | 引入时机 | 结构复杂度 |
| Abstract Factory | 比较常用 | 应用级 | 设计时 | 比较复杂 |
| Builder | 一般 | 代码级 | 编码时 | 一般 |
| Factory Method | 很常用 | 代码级 | 编码时 | 简单 |
| Prototype | 不太常用 | 应用级 | 编码时、重构时 | 比较简单 |
| Singleton | 很常用 | 代码级、应用级 | 设计时、编码时 | 简单 |
| Adapter | 一般 | 代码级 | 重构时 | 一般 |
| Bridge | 一般 | 代码级 | 设计时、编码时 | 一般 |
| Composite | 比较常用 | 代码级 | 编码时、重构时 | 比较复杂 |
| Decorator | 一般 | 代码级 | 重构时 | 比较复杂 |
| Facade | 很常用 | 应用级、构架级 | 设计时、编码时 | 简单 |
| Flyweight | 不太常用 | 代码级、应用级 | 设计时 | 一般 |
| Proxy | 比较常用 | 应用级、构架级 | 设计时、编码时 | 简单 |
| Chain of Resp. | 不太常用 | 应用级、构架级 | 设计时、编码时 | 比较复杂 |
| Command | 比较常用 | 应用级 | 设计时、编码时 | 比较简单 |
| Interpreter | 不太常用 | 应用级 | 设计时 | 比较复杂 |
| Iterator | 一般 | 代码级、应用级 | 编码时、重构时 | 比较简单 |
| Mediator | 一般 | 应用级、构架级 | 编码时、重构时 | 一般 |
| Memento | 一般 | 代码级 | 编码时 | 比较简单 |
| Observer | 比较常用 | 应用级、构架级 | 设计时、编码时 | 比较简单 |
| State | 一般 | 应用级 | 设计时、编码时 | 一般 |
| Strategy | 比较常用 | 应用级 | 设计时 | 一般 |
| Template Method | 很常用 | 代码级 | 编码时、重构时 | 简单 |
| Visitor | 一般 | 应用级 | 设计时 | 比较复杂 |
注:常用程度、适用层次、使用时机等基于自己的理解,结构复杂度基于C#语言,表格中所有内容仅供参考。