设计原则
程序员文章站
2022-04-07 12:04:59
...
本文主要整理一些面向对象设计的设计原则。
好的软件的需要达到下面几点 :
可维护,可复用,可扩展,灵活性好。高內聚低耦合
面向对象的好处:
通过封装, 继承,多态把程序的耦合度降低
用设计模式可使程序更加灵活,容易修改,并且易于复用
单一职责原则
单一职责原则(SRP),就一个类而言,应该仅有一个引起它变化的原因。
开放-封闭原则
开放-封闭原则,是说软件实体(类,模块,函数等)应该可以扩展,但是不可修改
依赖倒转原则
A. 高层模块不应该依赖低层模块,两个都应该依赖抽象
B. 抽象不应该依赖细节,细节应该依赖抽象
里氏代换原则
里氏代换原则(LSP),子类型必须能够替换掉它们的父类型。
迪米特法则
一个软件实体应当尽可能少地与其他实体发生相互作用。
如果两个对象之间不必彼此直接通信,那么这两个对象就不应当发生任何直接的相互作用,如果其中的一个对象需要调用另一个对象的某一个方法的话,可以通过第三者转发这个调用
也称为最少知识原则。迪米特法则可降低系统的耦合度,使类与类之间保持松散的耦合关系。
接口隔离原则(ISP)
一个类对另一个类的依赖应该建立在最小的接口上。
合成/聚合复用原则
合成复用原则,就是在一个新的对象里面使用一些已有的对象,使之成为新对象的一部分,新的对象通过这些对象的委派达到复用已有功能的目的。他的设计原则是:要尽量使用合成/聚合,尽量不要使用继承。