设计模式-七个基本原则之一-迪米特法则 + 案例

迪米特法则:(LoD) 面向对象七个基本原则之一

  • 只与直接的朋友通信:对象应只与自己直接关联的对象通信,例如:方法参数、返回值、创建的对象。
  • 避免"链式调用" :尽量避免通过多个对象链进行调用。例如,a.getB().getC().doSomething()这种形式不符合迪米特法则。
目的
  • 降低耦合:通过减少对象之间的依赖关系,提高系统的可维护性和可扩展性。
  • 提高灵活性:使得对象的内部实现可以独立变化,而不影响外部使用者。
  • 对象之间越少知道越好。

例如,汽车有三个类 Car Engine Driver

这三个类里面Car与Engine交互是符合迪米特法则的

Driver如果与Car的内部结构Engine交互则视为增加了耦合度,不符合迪米特法则

相关推荐
饕餮争锋3 小时前
设计模式笔记_行为型_观察者模式
笔记·观察者模式·设计模式
我命由我123456 小时前
软件开发 - 避免过多的 if-else 语句(使用策略模式、使用映射表、使用枚举、使用函数式编程)
java·开发语言·javascript·设计模式·java-ee·策略模式·js
long3166 小时前
java 策略模式 demo
java·开发语言·后端·spring·设计模式
汤姆大聪明6 小时前
【软件设计模式】前置知识类图、七大原则(精简笔记版)
笔记·设计模式
饕餮争锋10 小时前
设计模式笔记_行为型_策略模式
笔记·设计模式·策略模式
易元10 小时前
模式组合应用-桥接模式(一)
后端·设计模式
是2的10次方啊10 小时前
🕺 行为型设计模式:对象协作的舞蹈家(中)
设计模式
the sun3411 小时前
常见的设计模式(2)单例模式
单例模式·设计模式
是2的10次方啊12 小时前
🕺 行为型设计模式:对象协作的舞蹈家(上)
设计模式
一乐小哥14 小时前
从面试高频到实战落地:单例模式全解析(含 6 种实现 + 避坑指南)
java·设计模式