OO基础
主要包括:抽象,封装,多态,继承。
引言建议:我们假设你知道OO基础包括了多态的用法,继承就像按契约进行设计、封装是如何运作的。如果你觉得脑袋有一点生锈了,快快拿出你的《Head First Java》复习,然后在把这章读一遍。
OO原则
主要包括:(1)封装变化,(2)多用组合,少用继承,(3)针对接口编程,不针对实现
OO模式
策略模式:定义算法族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化独立于使用算法的客户
请思考:模式如何仰赖基础与原则?
要点总结:
- 知道OO基础,并不足以让你设计出良好的OO系统。
- 良好的OO设计必须具备可复用、可扩充、可维护三个特性。
- 模式可以让我们建造出具有良好OO设计质量的系统。
- 模式被认为是历经验证的OO设计经验。
- 模式不是代码,而是针对设计问题的通用解决方案。你可把他们应用到特定的应用中。
- 模式不发明,而是被发现。
- 大多数的模式和原则,都着眼于软件变化的主题。
- 大多数的模式都允许系统局部改变独立于其他部分。
- 我们常把系统中会变化的部分抽出来封装。
- 模式让开发人员之间有共享的语言,能够最大化沟通的价值。