目的
- 可重用性,相同功能代码不用重复多次编写。
- 可读性,编程规范,便于其他程序员阅读和理解。
- 可扩展,新增功能方便。
- 可靠性,新增功能后,对原来功能没有影响。
- 高内聚,低耦合。
六大设计原则
- 单一职责,每个类只做自己的事情,而不能变成万能的。
- 接口隔离,各个类建立自己的专用接口,而不是万能接口。类之间的依赖应该建立在最小接口之上。
- 依赖倒置,面向接口编程,而不是面向实现类。
- 开闭原则,对扩展开放,对修改关闭。拓展新类而不是修改旧类。
- 里氏替换原则,继承父类而不去改变父类。
- 迪米特法则,无需直接交互的两个类,如果两个类没有直接依赖关系,使用中间者。
- 合成复用原则,优先组合,其次继承。
设计模式
- 创建型,5种,单例模式,建造者模式,原型模式,工厂模式(简单工厂,抽象工厂)。
- 结构型,7种,适配器模式,装饰者模式,外观模式,代理模式,桥接模式,组合模式,享元模式。
- 行为型,11种,观察者模式,责任链模式,策略模式,模板方法模式,命令模式,备忘录模式,状态模式,访问者模式,中介模式,解释器模式,迭代子模式。