`

迪米特法则

 
阅读更多

一、什么是迪米特法则?
每个软件实体对其他的实体只有最少的了解,而且仅限于那些与本实体密切相关的软件实体
  也可说成:
只与直接的朋友通信


二、狭义迪米特法则
  如果两个类不必彼此直接通信,那么这两个类就不应该发生直接的相互作用。如果其中的一个类需要调用另一个类的方法,可通过第三者来转发。
  狭义迪米特法则有一个明显的缺点:会在系统里产生大量的小方法,而且很可能散落在各个角落。会导致不同模块之间的通信效率降低,不容易协调。

   为了弥补这个缺点,可结构依赖倒转原则。依赖于抽象的陌生人。也就是添加抽象陌生人,然后说将抽象陌生人当作朋友。


三、广义迪米特法则

  广义迪米特法则要求尽可能的隐藏实现细节:

(1)       优先将一个类设置成不变类。

(2)       尽量降低一个类的访问权限

(3)       尽量降低成员的访问权限

(4)       限制局部变量的有效范围

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics