目录
SRP:单一职责原则
表明一个类有且只有一个职责。一个类就像容器一样,它能添加任意数量的属性、方法等。
OCP:开闭原则
一个类应该对扩展开放,对修改关闭。这意味一旦创建了一个类并且应用程序的其他部分开始使用它,就不应该修改它。
LSP:里式替换原则
派生的子类应该是可替换基类的,也就是说任何基类可以出现的地方,子类一定可以出现。值得注意的是,当通过继承实现多态行为时,如果派生类没有遵守LSP,可能会让系统引发异常。
ISP:接口隔离原则
使用多个专门的接口比使用单一的总接口总要好。注意:在代码中应用ISP并不一定意味着服务就是绝对安全的。仍然需要采用良好的编码实践,以确保正确的验证与授权。
对于一个大型的系统功能,需要拆分为多个小功能,那么这个时候我们是写一个庞大的类来实现所有的功能接口呢,还是拆分多多个接口,并建立不同的实现类呢?
正确的选择是把单个接口分开,客户可以按需继承单一功能接口子类。
DIP:依赖倒置原则
表明高层模块不应该依赖低层模块,相反,他们应该依赖抽象类或者接口。这意味着不应该在高层模块中使用具体的低层模块。