设计模式基础
面向对象的六大原则
- 单一职责原则(Single Responsibility Principle, SRP)
- 开闭原则(Open Close Principle, OCP)
- 里氏替换原则(Liskov Substitution Principle, LSP)
- 依赖倒转原则(Denpendency Inversion Principle, DIP,也称依赖反转)
- 接口隔离原则(Interface Segregation Principle, ISP)
- 迪米特法则(Law of Demeter, LOD)
单一职责原则
单一职责原则:就一个类而言,应该仅有一个引起它变化的原因。单一职责原则划分不那么清晰,很多时候都是靠个人的经验来界定。最大的问题就是对类职责的定义。
开闭原则
开闭原则:软件中的对象(类、模块、函数等)应该对于扩展是开放的,但是对于修改是封闭的。
里氏替换原则
里氏替换原则:所有引用基类的地方必须能够用子类替换而不会出现异常或错误。
依赖倒转原则
依赖倒转原则:高层次模块不应该依赖于低层次的模块,两者都应该依赖于抽象接口;抽象接口不应该依赖于具体实现,而具体实现应该依赖于抽象接口。
接口隔离原则
接口隔离原则:客户端不应该依赖它不需要的接口。
迪米特法则
迪米特法则:一个对象应该对其他对象有最少的了解。