当前位置:  开发笔记 > 编程语言 > 正文

OOP有什么规则吗?

如何解决《OOP有什么规则吗?》经验,为你挑选了3个好方法。

最近我听说OOP(Java)有9条规则.我只知道四个是抽象,多态,继承和封装.OOP还有更多规则吗?



1> philant..:

看起来像你正在寻找的是面向对象设计的原则.

从敏捷软件开发原则,模式和实践中总结.这些原则是数十年软件工程经验中来之不易的产品.它们不是单一思维的产物,但它们代表了大量软件开发人员和研究人员的整合和着作.虽然它们在这里被提出作为面向对象设计的原则,但它们确实是软件工程长期原则的特例.

SRP单一责任原则一个班级应该只有一个改变的理由.

OCP开放 - 封闭原则软件实体(类,包,方法等)应该是可以扩展的,但是关闭以进行修改.

LSP Liskov Substition Principle Subtypes必须可替代其基类型.

DIP依赖性倒置原则抽象不应该依赖于细节.细节应该取决于抽象.

ISP接口隔离原则 客户不应强迫依赖于他们不使用的方法.接口属于客户端,而不属于层次结构.

REP释放 - 重用等效原则 重用的颗粒是释放的颗粒.

CCP共同关闭原则 包中的类应该针对相同类型的更改一起关闭.影响已关闭包的更改会影响该包中的所有类,而不会影响其他包.

CRP通用重用原则 包中的类可以一起重用.如果重用某个包中的某个类,则可以全部重用它们.

ADP Acylcic依赖关系原则 在依赖关系图中不允许循环.

SDP稳定的依赖原则 取决于稳定性.

SAP稳定的抽象原则 一个包应该是抽象的,因为它是稳定的.



2> Adeel Ansari..:

任何规则都不确定.所有这些提到的东西对我来说更像是OO范例.我们遵循的建议很少,

分离关注

每班的单一责任

首选组合而不是继承

编程到接口

加上比利博布已经提到了所有这些



3> Mitch Wheat..:

这些OO原则直接来自Head First Design Patterns:

封装变化的东西

编程到接口,而不是实现

赞成组合而不是继承

一个班级应该只有一个改变的理由(单一责任原则)

子类型必须可替代其基数(Liskov替代原则)

类可以打开以进行扩展,但是关闭以进行修改(开放 - 封闭原则)

推荐阅读
我我檬檬我我186
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有