您的位置:首页 > 其它

设计原则

2015-06-23 14:55 309 查看
一、职责单一原则

二、里氏替换原则

三、接口隔离原则

四、依赖倒置原则

五、迪米特法则

六、组合\聚合复用原则

七、开闭原则

一、职责单一原则(SRP:Single responsibility principle)

定义:不要存在多于一个导致类变更的原因。俗的说,即一个类只负责一项职责。

问题由来:T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障。也就是说职责P1和P2被耦合在了一起。

产生原因:没有任何的程序设计人员不清楚应该写出高内聚低耦合的程序,但是很多耦合常常发生在不经意之间, 其原因就是:职责扩散:因为某种原因,某一职责被分化为颗粒度更细的多个职责了

解决办法:遵守单一职责原则,将不同的职责封装到不同的类或模块中。分别建立两个类T1、T2,使T1完成职责P1功能,T2完成职责P2功能。这样,当修改类T1时,不会使职责P2发生故障风险;同理,当修改T2时,也不会使职责P1发生故障风险。

二、里氏替换原则(LSP:Liskov Substitution Principle)

定义1:如果对每一个类型为 T1的对象 o1,都有类型为 T2 的对象o2,使得以 T1定义的所有程序 P 在所有的对象 o1 都代换成 o2 时,程序 P 的行为没有发生变化,那么类型 T2 是类型 T1 的子类型。

定义2:所有引用基类的地方必须能透明地使用其子类的对象。

三、接口隔离原则(ISP:Interface Segregation Principle)

四、依赖倒置原则

五、迪米特法则

六、组合\聚合复用原则

七、开闭原则


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: