设计模式的七大原则_设计模式之面向对象七大基本原则

2024-12-2802:48:40创业资讯0

单一职责原则:指一个类应只有一个职责。它可提升代码的粒度与清晰度。

接口隔离原则(Interface Segregation Principle):设计者应该尽量使接口较小且易于管理。

依赖倒转原则(Dependence Inversion Principle):意味着高级模块不依赖于低级模块,二者都依赖于抽象。

里氏替换原则(Liskov Substitution Principle):指如果类型T1的每个对象都可以用类型T2的对象来替代,则T2是T1的子类型。

开闭原则(Open Closed Principle):意味着软件实体(如类、模块等)应对扩展开放,对修改关闭。

迪米特法则(Demeter Principle)又称为最少知道原则:指一个对象应该只与直接的朋友交互,了解最少的依赖。

合成复用原则(Composite Resuse Principle):鼓励使用合成或聚合的方式实现复用,而非继承。

目的:

  • 代码重用性增强。
  • 提高可读性。
  • 增强可扩展性。
  • 增强软件的可靠性。
  • 使程序呈现出高内聚、低耦合的特性。

单一职责原则示例:

单一职责原则要求一个类只负责一项职责。如果类A承担了两个不相关的职责:职责1和职责2,当职责1发生变化时,可能会影响到职责2的执行,因此需要将类A拆分为A1和A2两个类,分别负责各自的职责。

当类A通过接口Interface1依赖类B,类C通过接口Interface1依赖类D时,如果接口Interface1对于类A和类C不是最小接口,那么类B和类D必须实现它们不需要的方法。按照隔离原则,应将接口拆分为独立的几个接口,类A和类C分别与它们需要的接口建立依赖关系。

依赖倒转原则说明:

  1. 高层模块不应依赖于低层模块的具体实现。
  2. 抽象不应依赖于细节,细节应依赖于抽象。
  3. 依赖倒转的核心是面向接口编程。
  4. 此原则基于抽象比细节更稳定的认识。
  5. 使用接口或抽象类定义规范,实现细节交由子类完成。

里氏替换原则应用:

在使用继承时,遵循里氏替换原则。这意味着如果在基类中修改了某个方法的行为,那么所有继承自该基类的子类都应该能够透明地使用修改后的行为。为了遵循这一原则,应尽量避免在子类中重写父类的方法。

开闭原则实践:

通过遵循开闭原则,软件实体可以对扩展开放、对修改关闭。例如,当需要增加一个新功能时,不需要修改现有代码,而是通过扩展现有模块或添加新模块来实现。这有助于保持代码的稳定性和可维护性。

迪米特法则的应用场景:

遵循迪米特法则可以降低类之间的耦合度。通过将输出学院员工的方法封装在学院员工管理类中,减少了其他类对学院员工管理类的依赖。这样设计使代码更加清晰、易于维护。

合成复用原则的体现:

在软件开发中,应尽量使用合成或聚合的方式实现代码复用,而非继承。这有助于减少代码之间的耦合度,提高代码的可维护性和可扩展性。

  • 版权说明:
  • 本文内容由互联网用户自发贡献,本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 295052769@qq.com 举报,一经查实,本站将立刻删除。