软件设计原则

SRP 单一职责原则

一个类应该只有一个发生变化的原因

 

OCP 开放-封闭原则

软件实体 应该是可以扩展, 但是不能修改

对扩展开放,

对修改关闭

 

LSP 里式替换原则

子类型必须能够代替掉他们的基类型

其中子类与基类的关系不一定是 单纯的 is-a 关系.

is-a 应该就行为方式而言, 就是看具体场景来分析

所以设计时应该采用 契约设计的办法,  每个函数都要声明前置和后置条件. 

 

DIP 依赖倒置原则

a. 高层模块不应该依赖于底层模块, 两者都应该依赖于抽象

b. 抽象不应该依赖于细节, 细节应该依赖于抽象

 

ISP 接口隔离原则

不应该强迫客户程序依赖未使用的方法 (比如继承了没用的方法)

 

posted @ 2016-05-27 15:56  `Laimic  阅读(164)  评论(0)    收藏  举报