首页 > 其他 > 详细

迪米特法则

时间:2020-03-25 00:10:13      阅读:59      评论:0      收藏:0      [点我收藏+]

定义

    迪米特法则(Law of Demeter, LoD)是1987年秋天由lan holland在美国东北大学一个叫做迪米特的项目设计提出的,它要求一个对象应该对其他对象有最少的了解,所以迪米特法则又叫做最少知识原则(Least Knowledge Principle, LKP)。

意义  

    迪米特法则的意义在于降低类之间的耦合。由于每个对象尽量减少对其他对象的了解,因此,很容易使得系统的功能模块功能独立,相互之间不存在(或很少有)依赖关系。

迪米特法则的各种表述

  • 只与你直接的朋友通信。
  • 不要跟“陌生人通信”。
  • 每一个软件单位对其他的单位都只有最少知识,而且局限于那些与本单位密切相关的软件单位。

迪米特法则

  如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中的一个类需要调用另一个类的另一个方法的话,可以通过第三者转发这个调用。

  一个实例:朋友与陌生人 

   某个人有自己的朋友,而朋友的朋友对你来说就是一个陌生人。
1 public class Someone
2 {
3     public void operation(Friend friend)
4   {
5       friend.forward();  
6   }    
7 }
public class Friend {
    public Stranger stranger=new Stranger();
    public void operation2()
    {
        System.out.println("In Friend.operation2()");
    }
    public void forward()
    {
        stranger.operation3();
    }
}

  Someone类与Stranger类不直接发生互相作用,而是通过中间的Friend类与之发生直接的相互作用,这就是直接与你的朋友通信(迪米特法则)。

 

迪米特法则

原文:https://www.cnblogs.com/cxl66/p/12562971.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!