面向对象、设计原则、设计模式、编程规范、重构
面向对象
主流的三个编程风格有:面向对象,面向过程,函数式编程。
面向对象是最主流的风格,面向对象具有丰富的特性(封装,抽象,继承,多态)。
面向对象
- 面向对象的4大特性:封装、继承,抽象、多态。
- 面向对象编程与面向过程的区别和联系
- 面向对象分析,面向对象设计、面向对象编程
- 接口和抽象类的区别与各自的应用场景
- 基于接口实现的编程的设计思想
- 多个组合少用继承的设计思想
- 多面向过程的贫血模型和面向对象的充血模型
设计原则
设计原则是指导我们代码设计的一些总结,设计原则有 SOLID 原则:
- SOLID 原则- SRP 单一职责原则
- SOLID 原则- OCP 开闭原则
- SOLID 原则- LSP 里氏替换原则
- SOLID 原则- ISP 接口隔离原则
- SOLID 原则- DIP 依赖倒置原则
- DRY 原则、KISS 原则、 YAGNI 原则、LOD 法则
设计模式
设计模式是针对软件开发中遇到的一些设计问题,经典的设计模式有 23 种。但是可以分成 3 大类:创建型,结构型,行为型。
- 创建型 常见是设计模式有: 单利模式、工厂模式(工厂方法和抽象工厂)、建造者模式 不常见的有:原型模式
- 结构型 常用的有:代理模式,桥接模式,装饰器模式,适配器模式。不常用的有:门面模式、组合模式、享元模式
- 行为型 常用的有:观察者模式、模板模式、策略模式、职责链模式、迭代器模式、状态模式 不常用的:访问者模式、备忘录模式、命令模式、解释权模式、中介模式
编程规范
编程规范主要解决的是代码可读性的问题。编程规范相对于设计原则,设计模式,更加具体,更加偏重代码细节。
编程规范《重构》《代码大全》《代码整洁之道》是非常好的参考资料
代码重构
没有一劳永逸的设计,需要随着需求的变化,不断迭代。重构的工具是面向对象设计思想,设计原则,设计模式,编码规范。
- 重构的目的(why)、对象(what)、时机(when)、方法(how)
- 保证重构不出错的技术手段:单元测和代码可测试性。
- 两种不同规模的聪哥:大重构额小重构
面向对象、设计原则、设计模式、编程规范、代码重构 本质上都是服务于编写高质量代码的。面向对象编程因为具有丰富的特性(封装,抽象,继承,多态),可以实现很多复杂的设计思路,很多设计原则,设计模式等编码实现的基础。