系列文章目录
迪米特法则
合成复用原则
设计原则核心思想
文章目录
前言
大家好呀,欢迎来到柚子的博客~让我们一起成长吧o( ̄▽ ̄)ブ
提示:以下是本篇文章正文内容,下面案例可供参考
一、迪米特法则
1.迪米特法则基本介绍
(1)一个对象应该对其他对象保持最少的了解
(2)类与类关系越密切,耦合度越大
(3)迪米特法则(Demeter Principle)又叫最少知道法则,即一个类对自己依赖的类知道越少越好。也就是说,对于被依赖的类不管多么复杂,都尽量将逻辑封装在类的内部。对外除了提供的public方法,不对外泄漏任何信息
(4)迪米特法则还有个更简单的定义:只与直接的朋友通信
(5)直接的朋友:每个对象都会与其他对象由耦合关系,只要两个对象之间有耦合关系,我们就说这两个对象之间是朋友关系。耦合的方式有很多,依赖,关联,组合,聚合等。其中,我们称出现成员变量,方法参数,方法返回值中的类为直接的朋友。也就是说,陌生的类最好不要以局部变量的形式出现在类的内部。
2.迪米特法则注意事项和细节
(1)迪米特法则的核心是降低类之间的耦合
(2)但是注意:由于每个类都减少了不必要的依赖,因此迪米特法则只是要求降低类间(对象间)耦合关系,并不是要求完全没有依赖关系
二、合成复用原则
1.合成复用原则基本介绍
(1)原则是尽量使用合成/聚合的方式,而不是使用继承
(2)举例:A类有两个方法,让B类使用A类的两个方法
方法一:让B类继承A类
如果我们只是让B类去使用A类方法,使用继承就会让B和A的耦合性增强
如果新增一个方法三,B类只想使用前两个方法,不想使用方法三
方法二:依赖
在B类的方法里传A类的对象实例(增加一个类型A),使用A类的方法
方法三:聚合
在B类增加一个属性A(是A的一个对象实例),再使用set方法,这叫把A聚合到B里面
方法四:组合
在B类增加一个属性A(),在构建这个属性的时候,直接new,当A类创建好的时候,B类的对象实例创建好之后,属性就一起创建好了
三、设计原则核心思想
(1)找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起
(2)针对接口编程,而不是针对实现编程
(3)为了交互对象之间的松耦合设计而努力
总结
迪米特法则:一个类对自己依赖的类知道越少越好
合成复用原则:尽量使用合成/聚合的方式
设计原则核心思想:找出应用中可能需要变化之处,把它们独立出来
╭◜◝ ͡ ◜◝╮
( ˃̶͈◡˂ ̶͈ )感觉有用的话,欢迎点赞评论呀!
╰◟◞ ͜ ◟◞╯
版权归原作者 柚子猫屿 所有, 如有侵权,请联系我们删除。