OO的五大原则
1. SRP(Single Responsibility Principle 单一职责原则):
单一职责很容易理解,也很容易实现。所谓单一职责,就是一个设计元素只做一件事。什么是“只做一件事”?简单说就是少管闲事。现实中就是如此,如果要你专心做一件事情,任何人都有信心可以做得很出色。
2. OCP :开闭原则:
很简单,一句话:“Closed for Modification; Open for Extension”——“对变更关闭;对扩展开放”。
3.LSP——里氏替换原则:
Liskov于1987年提出了一个关于继承的原则“继承必须确保超类所拥有的性质在子类中仍然成立。”也就是说,当一个子类的实例应该能够替换任何其超类的实例时,它们之间才具有is-A关系。 举一个例子:生物学的分类体系中把企鹅归属为鸟类。类“鸟”中有个方法fly,企鹅自然也继承了这个方法,可是企鹅不能飞.
4.DIP 依赖倒置原则:
依赖倒置—ependence Inversion Principle)原则讲的是:要依赖于抽象,不要依赖于具体。 简单的说,依赖倒置原则要求客户端依赖于抽象耦合。原则表述: 抽象不应当依赖于细节;细节应当依赖于抽象; 要针对接口编程,不针对实现编程。
5.ISP 接口隔离原则:
使用多个专门的接口比使用单一的总接口要好。