设计模式六大原则之迪米特法则

简介: 设计模式六大原则之迪米特法则

概念

迪米特法则指的是一个类/模块对其他的类/模块有越少的了解越好。

简单来说迪米特发展想要表达的思想就是:不应该有直接依赖关系的类之间,不要有依赖;有依赖关系的类之间,尽量只依赖必要的接口。

个人理解

一个类只关注自己的事,不要过多关注其他的类或者模块。有点像单一职责;它的思想呢,也很重要,尽量不要有关系,如果真的要有关系,那就去建立一个接口类,继承接口去实现这种关系。它的核心不是这个,2个事是分开的;只不过实现了这个接口,有依赖关系的是接口。

案例

这种案例,在现实生活中也很常见吧。比如,村里的小卖铺,只是个小卖铺,卖东西的;东西哪来的呢?当然是通过一些渠道进的货;货怎么来的呢,有专门的货运公司运送过来的。小卖铺只干了一件事,卖货,渠道买货,货运公司送货。这中间没有跟一家公司有依赖,只是依赖于一些接口;今天张家提供货,通过一家货运公司拿的货;明天李家提供了其他的货,可以通过另外一家货运公司拿别的货;就这样慢慢积累成了一家小卖铺。当然我没干过这些,只是通过这个概念理解了一下这种关系。

小结

迪米特法则:一个类/模块对其他的类/模块有越少的了解越好。不应该有直接的依赖关系的类之间,不要有依赖;有依赖,也尽量只去依赖必要的接口。好了,就是这个意思,感兴趣,可以去学习学习。

相关文章
|
25天前
|
设计模式
设计模式六大原则之依赖倒置原则
设计模式六大原则之依赖倒置原则
|
19天前
|
设计模式 uml
设计模式学习心得之前置知识 UML图看法与六大原则(下)
设计模式学习心得之前置知识 UML图看法与六大原则(下)
12 2
|
17天前
|
设计模式 Java 数据库
深入理解设计模式六大原则
深入理解设计模式六大原则
|
19天前
|
设计模式 数据可视化 程序员
设计模式学习心得之前置知识 UML图看法与六大原则(上)
设计模式学习心得之前置知识 UML图看法与六大原则(上)
10 0
|
2月前
|
设计模式 Java API
【设计模式】JAVA Design Patterns——Combinator(功能模式)
【设计模式】JAVA Design Patterns——Combinator(功能模式)
|
5天前
|
设计模式 Go
Go语言设计模式:使用Option模式简化类的初始化
在Go语言中,面对构造函数参数过多导致的复杂性问题,可以采用Option模式。Option模式通过函数选项提供灵活的配置,增强了构造函数的可读性和可扩展性。以`Foo`为例,通过定义如`WithName`、`WithAge`、`WithDB`等设置器函数,调用者可以选择性地传递所需参数,避免了记忆参数顺序和类型。这种模式提升了代码的维护性和灵活性,特别是在处理多配置场景时。
41 8
|
13天前
|
设计模式 JavaScript 前端开发
js设计模式【详解】—— 构造函数模式
js设计模式【详解】—— 构造函数模式
18 6
|
19天前
|
设计模式 存储 算法
设计模式学习心得之五种创建者模式(2)
设计模式学习心得之五种创建者模式(2)
15 2
|
20天前
|
设计模式 搜索推荐
工厂方法模式-大话设计模式
工厂方法模式-大话设计模式
11 1
|
25天前
|
设计模式 算法
行为型设计模式之模板模式
行为型设计模式之模板模式