OOP 五大设计原则
2023-03-25 22:54:07 20 举报
AI智能生成
为你推荐
查看更多
设计原则
作者其他创作
大纲/内容
一个类或模块只负责完成一个职责(功能)
设计的粒度要小、功能要单一
单一职责原则(SRP)
软件实体(模块/类/方法等)应该 “对扩展开发,对修改关闭”
编写代码时需要具有扩展意识、抽象意识、封装意识、预留扩展点等
开闭原则(OCP)
子类对象能够替换父类对象出现的任何地方,并且要保证原来的程序逻辑行为不变和正确性不被破坏
也就是子类要完美继承父类的设计初衷,并做了增强
违背 LSP 的设计:子类违背父类声明要实现的功能子类违背父类的输入、输出、异常的约定子类违背父类注释中的特殊说明
里氏替换原则(LSP)
接口的调用者不应该被强迫依赖它不需要的接口
这里的接口可以理解为:一组 API 接口集合单个 API 接口或函数OOP 中的接口概念
接口隔离原则(ISP)
高层模块不要依赖低层模块。高层模块和低层模块应该通过抽象来互相依赖。除此之外,抽象不要依赖具体实现细节,具体实现细节依赖抽象
在调用链上,调用者属于高层,被调用者属于低层
在业务开发中,高层模块依赖底层模块是没有任何问题的,这条原则主要还是用来指导框架层面的设计,跟 IOC 类似
符合 DIP 原则的典型例子有:Tomcat 和 我们编写的 Web 应用程序代码,都依赖于 \"Servlet 规范\" 这个抽象JVM 和 Java 代码,都依赖于 \"字节码文件\" 这个抽象
依赖反转原则(DIP)
S:单一职责原则(SRP)
O:开闭原则(OCP)
L:里氏替换原则(LSP)
I:接口隔离原则(ISP)
D:依赖反转原则(DIP)
SOLID
五大设计原则
0 条评论
回复 删除
下一页