首页 > 其他分享 >趣解迪米特法则之《只是买台咖啡机,竟然要学习咖啡器的运行原理?》

趣解迪米特法则之《只是买台咖啡机,竟然要学习咖啡器的运行原理?》

时间:2023-11-10 16:05:17浏览次数:28  
标签:咖啡 买台 调用 用户 接口 咖啡机 趣解迪 我们

〇、小故事

小王最近工作特别的忙,每天要早出晚归,睡眠质量很差,为了可以精力充沛的投入到每天的工作中,她都在上班路上买一杯公司楼下的星巴克咖啡来提提神。咖啡味道很好,但是每天买咖啡的人真的是太多了,本来上班的路上就已经很疲劳了,还要在店门口排半天的队,她觉得这种情况需要改变一下了。

趣解迪米特法则之《只是买台咖啡机,竟然要学习咖啡器的运行原理?》_迪米特法则

那么既然早上要喝杯咖啡来提提神,何不自己买台咖啡机呢? 早上起来,吃完早饭,喝杯自己做的咖啡,岂不美哉!于是乎,她就从网上买了一台咖啡机,她找了半天说明书,结果就找到一个客服电话,她打电话过去咨询为什么没有说明书?客户妹妹说,不需要说明书的,您可以参加我们的免费培训课程,一共20节课,我们会从原理上给您讲解咖啡机是工作原理的!

趣解迪米特法则之《只是买台咖啡机,竟然要学习咖啡器的运行原理?》_后端_02

什么!我只是买台咖啡机,竟然要学习咖啡器的运行原理? ”你们公司莫不是疯了吧。挂掉电话后,小王就把这款咖啡机退掉了……(虚拟故事,莫要当真~)

一、原则定义

通过上面的故事,大家肯定也会觉得非常的荒谬。我买一台咖啡机,你就告诉我怎么使用就可以了呗!干嘛要我去学习你们咖啡机的工作原理呢!那难道我买一台汽车,我还要学习汽车工作原理吗!

所以,在日常生活中,迪米特法则就已经融入到我们的生活中了。那么,到底什么是迪米特法则呢?我们来看一下它的定义:

LoDLaw of Demeter):也称为最少知识原则。描述的是:一个类应该对自己需要耦合或调用的类知道得最少,你(被耦合或调用的类)的内部是如何复杂,那是你的事儿,和我没关系,我就知道你提供的这么多方法,我就调用这么多,其他的我一概不关系。

那么,还是以买咖啡机为例,我们买了一款咖啡机,只需要根据说明书,知道怎么制作一杯香浓的咖啡即可,其他的我就不关注了。这也就是日常生活中的迪米特法则/最少知识原则

而在我们开发的时候,也需要遵循这个设计原则。比如我们常常在开发过程中,需要调用其他研发团队的接口,来实现某种业务逻辑,我们以支付为例。作为我们使用方,只需要对方提供一个支付接口,调用后返回支付成功或支付失败&失败原因即可。如果对方开发人员给了你2,3个接口,让你按照某些支付流程去调用,这显然就违背了迪米特法则了。你应该立刻针对其中的不合理性进行讨论,而不是听之任之。

二、原则实践

上面的故事和原理相信大家都已经有所了解了,我们还是举一个业务上的小例子,再来加深说明一下违反里式替换后可能会出现的问题。

业务背景:

当一个微信用户要在我们系统操作业务逻辑的时候,我们的需求是:
1】如果微信用户没有注册我们系统的话,我们默认的调用注册接口去注册它,注册成功后,把用户信息返回给业务系统;
2】如果她已经注册了,即已经存在于我们的用户表,则把用户信息返回给业务系统,再通过它的用户信息,进行下一步业务操作。
那么针对于这个需求,我们其实应该是希望负责用户信息的研发团队,给我们提供一个接口,即:获得用户信息的接口。而不应该提供用户信息查询接口,用户信息注册接口,甚至底层还涉及到其他安全性接口,由我们一步一步的去调用,这样就违反了迪米特法则了。

以上做法类似DDD里面领域划分的概念。是我域负责的业务我负责,不是我域的业务,由相关领域负责即可。

今天的文章内容就这些了:

写作不易,笔者几个小时甚至数天完成的一篇文章,只愿换来您几秒钟的 点赞 & 分享 。

更多技术干货,欢迎大家关注公众号“爪哇缪斯” ~ (^o^)/ ~ 「干货分享,每天更新」

标签:咖啡,买台,调用,用户,接口,咖啡机,趣解迪,我们
From: https://blog.51cto.com/muse/8303717

相关文章

  • 咖啡机缺满水提醒方案
    为了解决咖啡机缺水的问题,可以采用光电液位传感器的方案进行满水提醒。光电液位传感器是一种能够通过光电原理来检测液体水位的传感器。首先,将光电液位传感器安装在咖啡机的水箱内部。分离式光电液位传感器非常适合水箱移动的设备,分离式液位传感器,是在传统光学传感器的基础上,把菱鏡......
  • 咖啡机怎样精准控制水流量
    咖啡机是现代人生活中不可或缺的一部分,而咖啡的味道和口感很大程度上取决于水流量的控制。为了保证咖啡的质量,咖啡机需要精准控制水流量。而霍尔流量计是一种常用的流量计,可以帮助咖啡机实现精准控制水流量。霍尔流量计是一种基于霍尔效应的流量计,它通过测量液体通过管道的速度和流......
  • 咖啡机小流量液体专用流量计
    小流量液体专用流量计是一种用于测量小流量液体的流量计,它广泛应用于咖啡机、饮水机、饮料机等需要控制液体流量的设备上。常见的小流量液体专用流量计有霍尔流量计和光电流量计两种。下面我们来详细介绍一下这两种流量计。霍尔流量计是一种基于霍尔效应的流量计,它通过测量液体通过......
  • 咖啡机缺水提醒方案-分离式液位传感器
    随着人们生活水平的提高,咖啡已成为许多人不可或缺的一部分。而咖啡机则成为了很多人在家中制作咖啡的首选工具。然而,由于大多数咖啡机都需要使用水来制作咖啡,因此需要定期加水。如果您忘记加水,咖啡机可能会受到损坏或咖啡就无法制作。因此,一个咖啡机缺水提醒方案成为了必要的。其中......
  • 咖啡机如何实现缺液提醒?
    咖啡机在日常生活中的使用率是很高的。在使用的过程中可以发现咖啡机是有一个液位检测功能,当缺水时,会提醒加水或是自动补水。那么这个功能是如何实现的呢?一般用于咖啡机这种应用上,需要符合食品级。一般会采用分离式液位传感器,因为分离式液位传感器不接触液体检测,比较卫生,且满足水箱......
  • 成功案例 | 智慧屏赋能咖啡机高端便捷双重体验
    近年来由于咖啡文化的风靡,很大一部人逐渐形成了买咖啡的消费习惯,对于长期的咖啡消费者来说,每天享用一杯二三十元起步的现磨咖啡所需要的金钱消耗是较大的,因此咖啡机成为了......
  • 智芯传感压力传感器在咖啡机中的应用
    绝大多数在都市里生活的上班族,都或多或少品尝过高大上的星巴克,也可能浅尝过小清新的Costa,再亦或点击下单过朴素温雅的“小蓝杯”Luckin,总之,随着人们生活节奏不断地加快,生活......