设计模式
Christopher Alexander 说过:“每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复劳动”。
模式四要素
- 模式名
- 问题:描述了应该在何时使用模式。
- 解决方案:描述了设计的组成成分,他们之间的相互关系及各自的职责和协作方式。
- 效果:描述了模式应用的效果及使用模式应权衡的问题。
如何寻找适合的设计?
- 可以写出一个问题描述,挑出名词和动词,进而创建相应的类和操作。
- 可以关注系统的协作和职责关系。
- 可以对现实世界建模,再将分析时发现的对象转化至设计中。
面向对象设计的两大原则
- 针对接口编程,而不是针对实现编程。
- 优先使用对象组合,而不是类继承。