软件设计模式概述-七个常用原则

单一职责原则

就一个类而言,应该仅有一个引起他变化的原因

为什么
当一个类职责过多,一个职责的变化可能影响其他职责的能力,这种耦合导致了脆弱的设计

开闭原则

软件实体(类,模块,函数) 可以扩展,不可修改
对扩展开放,对修改封闭

为什么
需求是不断变化的,不可能一开始就能写出完美的代码,这时候就需要在需求到来时,尽可能少的修改原来的代码,扩展新的功能

里氏替代原则

子类型必须能够替换掉他们的父类型
如果一个软件实体,使用的是一个父类,那么一定适用于其子类,且他察觉不到父类对象于子类对象的区别,也就是说,在软件里面,把父类都替换成子类,程序的行为没有改变

也就是说,子类继承了父类,便可以以父类的身份出现

依赖倒转原则

1.高层模块不应该依赖低层模块,两个都依赖抽象
2.抽象不应该依赖细节,细节应该依赖抽象
针对接口编程,不要对实现编程

接口隔离原则

客户端不应该依赖那些他不需要的接口

合成复用原则

优先使用对象组合,而不是通过继承来达到复用的目的
在一个新的对象里面通过关联关系(包括组合,与聚合关系)来使用一些已有的对象,使之成为新对象的一部分,新对象通过委派调用已有对象的方法来到到复用功能的目的

迪米特法则

如果两个类不直接通信,那么这两个类就不应当发生直接的相互作用,如果其中一个类需要调用另一个类的摸一个方法的话,可以通过第三者来转发这个调用

上一篇:电磁兼容(EMC):整改案例(四)人体对EFT测试影响有多大?


下一篇:http cache-control