回顾一下六种原则

回顾一下知识点,上述六篇文章都转载自花郎V的博客园,写的不错,转载便于回顾。网址https://www.cnblogs.com/loulijun/category/343317.html


单一职责原则(Single Responsibility Principle),简称SRP。

定义:

There should never be more than one reason for a class to change.

应该有且仅有一个原因引起类的变更。

简单理解:

在设计接口的时候,应将类的属性和行为分开定义,使得每个接口只负责一种职责。

好处:

1、降低类的复杂性,实现什么样的职责都有清晰的定义

2、提高可读性

3、提高可维护性

4、降低变更引起的风险,对系统扩展性和维护性很有帮助

里氏置换原则(Liskov Substitution Principle),简称LSP

定义:

Functions that use pointers or references to base classes must be able to use objects of derived classes without knowing it.

所有引用基类的地方必须能够透明的使用其子类对象。

简单理解:

所有用到基类的地方都可以换成子类。

好处:

这个原则是为良好的继承定义一个规范,有4层含义:

一、子类必须完全实现父类的方法

二、子类可以有自己的特性

三、覆盖或者实现父类的方法时输入参数可以被放大

四、覆写或者实现父类的方法时输出结果可以被缩小

依赖倒置原则(Dependence Inversion Principle),简称DIP

定义

High level modules should depend upon low level modules. Both should depend upon abstractions. Abstractions should not depend upon details. Details should depend upon abstractions.

1、高层模块不应该依赖低层模块,两者都应该依赖于抽象(抽象类或接口)

2、抽象(抽象类或接口)不应该依赖于细节(具体实现类)

3、细节(具体实现类)应该依赖抽象

简单理解:

通过抽象(抽象类或接口)使各个类或模块的实现彼此独立,不相互影响,实现模块间的松耦合。

开闭原则(Open Closed Principle)

开闭原则的核心是:对扩展开放,对修改关闭

简单理解:

改变一个软件时(比如扩展其他功能),应该通过扩展的方式来达到软件的改变,而不应爱修改原有代码来实现变化


迪米特法则(Law of emeter)

定义:一个对象应该对其他对象了解最少

简单理解:

类间解耦,弱耦合,只有弱耦合了以后,类的复用性才可以提高。

通过抽象(象类或

接口隔离原则

有两种定义

第一种:Clients should not be forced to depend upon interfaces that they don't use.(客户端不应该强行以来它不需要的接口)

第二种:The dependency of one class to another one should depend on the smallest possible interface.(类间的依赖关系应该建立在最小的接口上)

简单理解:

接口的方法应该尽量小且有用。

口)使各个类或模块的实现彼此独立,不相互影响,实现模块间的松耦合。









  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值