面向对象设计原则概述——《C#设计模式读书笔记》

软件的可维护性(Maintainability)和可复用性(Reusability)是两个非常重要的用于衡量软件质量的质量属性,软件可维护性是指软件能够被理解、改正、适应及拓展的难易程度,软件的可复用性是指软件能够被重复使用的难易程度。
面向对象设计原则为支持可维护性复用而诞生,这些原则蕴含在很多设计模式中,它们是从许多设计方案中总结出的指导性原则,但并不是强制性的。


7个常用的面向对象设计原则

设计原则名称 定义 使用频率
单一职责原则
(Single Responsibility Principle, SRP)
一个对象应该只包含单一的职责,并且该职责被完整地封装在一个类中 ★★★★☆
开闭原则
(Open-Closed Principle, OCP)
软件实体应对拓展开发,对修改关闭 ★★★★★
里氏替换原则
(Liskov Substitution Principle, LSP)
所有引用基类的地方必须能透明地使用其子类的对象 ★★★★★
依赖倒转原则
(Dependence Inversion Principle, DIP)
高层模块不应该依赖底层模块,它们都应该依赖抽象。抽象不应该依赖于细节,细节应该依赖于抽象 ★★★★★
接口隔离原则
(Interface Segregation Principle, ISP)
客户端不应该依赖那些它不需要的接口 ★★☆☆☆
合成复用原则
(Composite Reuse Principle, CRP)
优先使用对象组合,而不是继承来达到复用的目的 ★★★★☆
迪米特法则
(Law of Demeter, LoD)
每一个软件单位对其他的单元都只有最少的知识,而且局限于那些与本单位密切相关的软件单位 ★★★☆☆

猜你喜欢

转载自blog.csdn.net/hewhys/article/details/81015702