最近听说OOP(Java)有9条规则。我只知道四种:抽象、多态、继承和封装。 OOP 还有更多规则吗?
似乎您正在寻找的是面向对象设计的原则 http://www.butunclebob.com/ArticleS.UncleBob.PrinciplesOfOod.
总结自敏捷软件开发原则、模式和实践 https://rads.stackoverflow.com/amzn/click/com/0135974445。这些原则是数十年软件工程经验来之不易的产物。它们不是单一思想的产物,而是代表了大量软件开发人员和研究人员的集成和著作。尽管它们在这里作为面向对象设计的原则呈现,但它们实际上是长期存在的软件工程原则的特例。
SRP 单一职责原则一个类应该只有一个改变的理由。
OCP 开闭原则软件实体(类、包、方法等)应该对扩展开放,但对修改关闭。
LSP 里氏替换原则子类型必须可替换其基本类型。
DIP 依赖倒置原理抽象不应该依赖于细节。细节应该取决于抽象。
ISP接口隔离原则不应强迫客户依赖他们不使用的方法。接口属于客户端,而不属于层次结构。
REP 发布-重用等效原则再利用的颗粒就是释放的颗粒。
CCP 共同封闭原则包中的类应该针对相同类型的更改关闭在一起。影响已关闭包的更改会影响该包中的所有类,但不会影响其他包。
CRP 通用重用原则包中的类可以一起重用。如果重用包中的其中一个类,则可以重用所有类。
ADP 非循环依赖原则依赖图中不允许有循环。
SDP 稳定依赖原则取决于稳定的方向。
SAP 稳定抽象原则包应该既抽象又稳定。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)