设计模式-可复用面向对象设计的基础
1 书籍介绍
- WIKI
- zh WIKI、en WIKI
- (no term)
- GoF(Gang Of Four,四人帮)
- Erich Gamma(Twitter): 设计模式、JUnit、Eclipse Java Tools、MS vscode
- Richard Helm:
2 引言
2.1 什么是模式?
每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心。 这样,你就能一次又一次地使用该方案而不必做重复劳动。
Christopher Alexander says, "Each pattern describes a problem which occurs over and over again in our environment, and then describes the core of the solution to that problem, in such a way that you can use this solution a million times over, without ever doing it the same way twice."
四个基本要素:
- 名称(name):助记名;
- 问题(problem):描述何时使用;
- 解决方案(solution):描述设计组成部分;
- 效果(consequences):模式的应用效果以及模式权衡;