当前位置: 首页 > 网络应用技术

分析软件设计原理:Richeli替代原理(用代码示例)

时间:2023-03-05 19:18:33 网络应用技术

  在软件开发中,为了改善软件系统的维护和复制并提高软件的可伸缩性和灵活性,程序员应尝试根据六个原则来制定程序,从而提高软件开发效率,并节省软件开发和维护成本这些六篇文章是开放和关闭的原则,Richeli替代的原理,对反向的依赖原理,界面隔离原理,Dimitt的原理和合成的重复使用原理。

  RISAI替代原则是面向对象设计的基本原理之一。

  Dai Shi替换的原理:任何基类都可以出现,子类肯定可以出现。受欢迎的理解:子类可以扩展父类的功能,但不能更改父类的原始函数。类也继承了父类,除了添加新方法以完成新功能外,请尽量不要重写父类。

  如果新功能通过重写父级完成,尽管编写很简单,但是整个继承系统的复制将很差,尤其是当多态性更频繁时

  让我们看一下李什更换原则原理中的一个经典示例

  [示例]创建不是矩形。

  在数学领域中,平方形状无疑是矩形,它是相同长度的矩形形状,宽度。因此,与我们开发的几何图形相关的软件系统可以使正方形从矩形产生。

  长方形:

  正方形(正方形):

  由于正方形的长度和宽度是相同的,因此在方法setLength和setWidth中,长度和宽度需要相同的值。

  类RectangleDemo类是我们软件系统中的一个组件。它具有依赖基类矩形的调整大小方法。调整大小方法是在直流类别中的一种方法,可以实现逐渐增长的宽度的效果。

  当我们运行此代码时,我们会发现,如果我们将普通矩形作为参数传递到调整大小方法中,我们将看到逐渐增加矩形宽度的效果。当宽度大于长度时,代码将停止。我们的期望。

  如果我们将正方形作为参数传输到调整大小方法中,我们将看到正方形的宽度和长度将在增长,并且代码将继续运行,直到系统溢出错误为止。

  因此,普通矩形适合此代码,正方形不合适。

  我们得出的结论是,在调整大小方法中,矩形类型的参数不能被方形类型的参数替换。

  因此,正方形和矩形类之间的继承关系违反了李更换的原则。它们之间的继承关系尚未建立,正方形不是矩形。

  如何提高?

  目前,我们需要重新设计它们之间的关系并抽象四边形,以允许矩形和方形类实现四边形接口。

  如下所示: