Java学习心得

面向对象设计(OOD:Object Oriented Desig

2020-09-25  本文已影响0人  tf2jaguar

面向对象设计(OOD:Object Oriented Design)

缩写 英文名称 中文名称
SRP Single Responsibility Principle 单一职责原则
OCP Open Close Principle 开闭原则
LSP Liskov Substitution Principle 里氏替换原则
LoD Law of Demeter ( Least Knowledge Principle) 迪米特法则(最少知道原则)
ISP Interface Segregation Principle 接口分离原则
DIP Dependency Inversion Principle 依赖倒置原则

单一职责原则

定义

一个类只允许有一个职责,即只有一个导致该类变更的原因。

优点

如果类与方法的职责划分得很清晰,不但可以提高代码的可读性,更实际性地更降低了程序出错的风险,因为清晰的代码会让bug无处藏身,也有利于bug的追踪,也就是降低了程序的维护成本。


开闭原则

定义

一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。

优点

实践开闭原则的优点在于可以在不改动原有代码的前提下给程序扩展功能。增加了程序的可扩展性,同时也降低了程序的维护成本。


里氏替换原则

定义

所有引用基类的地方必须能透明地使用其子类的对象,也就是说子类对象可以替换其父类对象,而程序执行效果不变。

优点

可以检验继承使用的正确性,约束继承在使用上的泛滥。


迪米特法则

定义

一个对象应该对尽可能少的对象有接触,也就是只接触那些真正需要接触的对象。

优点

实践迪米特法则可以良好地降低类与类之间的耦合,减少类与类之间的关联程度,让类与类之间的协作更加直接。


接口分离原则

定义

多个特定的客户端接口要好于一个通用性的总接口。

优点

避免同一个接口里面包含不同类职责的方法,接口责任划分更加明确,符合高内聚低耦合的思想。


依赖倒置原则

定义

依赖抽象,而不是依赖实现。

抽象不应该依赖细节;细节应该依赖抽象。

高层模块不能依赖低层模块,二者都应该依赖抽象。

优点

通过抽象来搭建框架,建立类和类的关联,以减少类间的耦合性。而且以抽象搭建的系统要比以具体实现搭建的系统更加稳定,扩展性更高,同时也便于维护。

上一篇 下一篇

猜你喜欢

热点阅读