大家好,我是栗子为,小为参加工作后对设计模式的理解有了更深的体会,于是决定来好好学习一下设计模式,那么今天我们就从设计模式最基本的原则开始学习
下面大家就跟着小为一起来看看设计模式的六大基本原则
设计模式的六大原则
-
单一职责原则(Single Responsibility Principle) -
开闭原则(Open Closed Principle) -
里氏替换原则(Liskov Substitution Principle) -
迪米特法则(最小知道原则)(Low of Demeter) -
接口隔离原则(Interface Segregation Principle) -
依赖倒置原则(Dependence Inversion Principle)
下面我们用最通俗的话来解释这些原则
01
—
开闭原则
一个软件实体,如类、模块和函数应该对扩展开放,对修改关闭
补充:可以使用接口和抽象类来实现这样的效果,实现热插拔,使程序的扩展性好,易于维护和升级
02
—
单一职责原则
一个类应该只有一个发生变化的原因
补充:单一职责原则不仅适于接口和类,也适于方法。一个方法尽可能只做一件事,比如修改用户密码的方法就不要放到修改用户信息方法中
好处:
-
类的复杂度降低,清晰地定义了类的职责 -
可读性高 -
可维护性高 -
变更引起的风险降低
03
—
里氏替换原则
所有引用基类的地方必须能透明地使用其子类的对象
这句话可能不太好理解,我们来看看对这个原则简单的几个定义:
-
子类必须完全实现父类的方法 -
孩子类可以有自己的个性 -
覆盖或实现父类的方法时,输入参数可以被放大 -
覆盖或实现父类的方法时,输出结果可以被缩小
04
—
依赖倒置原则
上层模块不应该依赖底层模块,应该依赖于抽象
抽象不应该依赖于细节,细节应该依赖于抽象
在Java中的表现是:
-
模块间的依赖通过抽象发生,实现类之间不直接发生依赖关系,其依赖关系是通过接口或抽象类产生的 -
接口或抽象类不依赖于实现类 -
实现类依赖接口或抽象类
好处:
依赖倒置原则可以减少类间的耦合性,提高系统的稳定性,降低并行开发引起的风险,提高代码的可读性和可维护性
05
—
接口隔离原则
客户端不应该依赖于它不需要的接口
类间的依赖关系应该建立在最小的接口上
简单地说就是:使用多个隔离的接口比使用单个接口要好
06
—
迪米特法则
一个类对自己依赖的类知道的越少越好
补充:另一种表达方式是,只与直接的朋友通信,类之间只要有耦合关系,就叫朋友关系。耦合分为依赖、关联、聚合、组合等。我们称出现为成员变量、方法参数、方法返回值中的类为直接朋友。局部变量、临时变量则不是直接的朋友。我们要求陌生的类不要作为局部变量出现在类中
07
—
总结
这六大原则小为也是用了通俗的话来介绍,大家在理解的基础上去记忆,接下来小为会围绕设计模式,来展开介绍,因为我经常会把几种设计模式弄混,所以打算在下期的文章中,把容易弄混的设计模式放在一起,用真正的例子去进行介绍,那么今天的内容就分享到这啦,感谢大家
关注六只栗子,面试不迷路~
“
🏋️别人爱举铁我爱举个🌰
🧩知识分享 | 面试经验 | 面试辅导 | 408辅导
🌏领域:前端 | 后端 | 深度学习 | 大数据 | 项目管理
🔎语言:Java|Python
🔗微信公众号搜索“六只栗子” | 邮箱联系:sixchestnuts@163.com
”
作者 栗子为
编辑 一口栗子
本文内容原创自“六只栗子”团队
©原创IP版权在手,未经授权商用必究
原文始发于微信公众号(六只栗子):设计模式也就那么回事(一)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/88191.html