迪米特法则(Law of Demeter)又叫作最少知道原则(Least Knowledge Principle 简写LKP),就是说一个对象应当对其他对象有尽可能少的了解,不和陌生人说话。英文简写为: LoD.
迪米特法则可以简单说成:talk only to your immediate friends。 对于面向OOD来说,又被解释为下面几种方式:一个软件实体应当尽可能少的与其他实体发生相互作用。每一个软件单位对其他的单位都只有最少的知识,而且局限于那些与本单位密切相关的软件单位。
迪米特法则的初衷在于降低类之间的耦合。由于每个类尽量减少对其他类的依赖,因此,很容易使得系统的功能模块功能独立,相互之间不存在(或很少有)依赖关系。
迪米特法则不希望类直接建立直接的接触。如果真的有需要建立联系,也希望能通过它的友元类来转达。因此,应用迪米特法则有可能造成的一个后果就是:系统中存在大量的中介类,这些类之所以存在完全是为了传递类之间的相互调用关系——这在一定程度上增加了系统的复杂度。
有兴趣可以研究一下设计模式的门面模式(Facade)和中介模式(Mediator),都是迪米特法则应用的例子。
相关推荐
迪米特原则(Least Knowledge Principle,LKP),也被称为最少知识原则,是软件设计中的一个重要概念,属于面向对象设计的基本原则之一。这个原则的核心思想是降低类与类之间的耦合度,使得系统更加灵活,可维护性和...
简称DIP)、里氏替换原则(Liskov Substitution Principle,简称LSP)、最少知识原则(Least Knowledge Principle)以及迪米特法则(Law of Demeter,简称LoD)。下面将对这六个原则进行详细解读: 1. 单一责任原则...
这些原则包括单一职责原则、开放封闭原则、里氏替换原则、最少知识原则、接口隔离原则和依赖倒置原则等。 1. 单一职责原则(Single Responsibility Principle - SRP) 单一职责原则是指一个类应该只有一个原因去...
本篇将详细讲解三个重要的原则:单一职责原则、开放封闭原则和最少知识原则。 首先,**单一职责原则**(Single Responsibility Principle, SRP)强调一个对象或函数应仅有一个引起其变化的原因。这意味着每个函数或...
迪米特法则提倡每个对象应该对其他对象有最少的了解,也称为最少知识原则。这意味着对象只应与其直接的朋友交互,而不应了解过多的外部细节。遵循这一原则可以降低模块间的耦合,提高系统的可维护性。 以上原则...
- 也称为最少知识原则,它要求一个对象应当尽量少地了解其依赖对象的内部细节。一个对象只应该与其直接的朋友通信,避免深层的耦合。遵循这个原则可以减少类之间的交互复杂性,提高系统的可维护性。 7. **合成/...
最少知识原则是指对象之间的交互应该尽量减少,从而减小类之间的耦合。这个原则强调了类的独立性和低耦合性,防止类之间的紧耦合。应用时,需要尽量减小依赖关系,避免类之间的过于紧密的耦合。 5. 接口隔离原则...
迪米特法则(Law of Demeter,LoD),又称最少知识原则,提倡一个对象应该尽量少地了解其他对象的内部细节。遵循这一原则可以减少类之间的交互,降低系统的复杂性,使得修改和扩展变得更容易。 这六大原则共同构成...
也称为最少知识原则,迪米特法则建议一个对象应该尽量减少对其他对象的了解,仅与直接的朋友通信。这有助于降低系统的复杂性,提高模块的独立性。 6. 开闭原则(Open-Closed Principle, OCP) OCP指出,软件实体...
文档中还提及了OOD中的Law of Demeter(迪米特法则),又称为最少知识原则(Least Knowledge Principle)。它建议不要让一个对象知道太多关于另一个对象的信息,只和它的直接朋友通信。这样做可以降低对象之间的耦合...
- 也称为最少知识原则,它建议一个对象应该尽量少地了解其他对象的内部细节。每个对象都应尽量减少与外部对象的交互,只与直接的朋友通信。这有助于降低系统的复杂性,增强模块的独立性。 在实际编程中,设计模式...
6. 迪米特法则(最少知识原则):一个对象应该对其他对象有最少的了解,减少对象间的交互。 二、24种设计模式 1. 创建型模式:单例模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式,它们主要解决对象创建...
- 迪米特法则(最少知识原则)则建议一个对象应当对其他对象有尽可能少的了解。 最后,了解Java中的重载(Overloading)和重写(Overriding)也是非常重要的。方法重载发生在同一个类中,而方法重写发生在子类和...
5. 迪米特法则(Law of Demeter, LoD)或最少知识原则:一个对象应当对其他对象有尽可能少的了解。 6. 开闭原则(Open/Closed Principle, OCP):软件实体应当对扩展开放,对修改关闭。这意味着在不修改现有系统的...
迪米特法则 迪米特法则简介 迪米特法则(Law of Demeter, LoD)又称为最少知识原则,它建议一个对象应该尽可能少地了解其他对象的内部细节,通过最小化类之间的交互来降低耦合。 迪米特法则 迪米特法则的应用...
5. 迪米特法则(Law of Demeter, LoD):也称作最少知识原则,它要求一个对象对其他对象有最少的了解。也就是说,一个对象应当尽可能少地与其他对象发生相互作用。 6. 开闭原则(Open/Closed Principle, OCP):...
4. **最少知识原则(LKP)/迪米特法则(Law of Demeter)**: 这个原则要求对象只与直接关联的对象交互,以减少类之间的耦合度。遵循此原则,可以降低系统的复杂性,提高模块的独立性。例如,一个类不应直接访问...
迪米特法则也称为“最少知识原则”,建议一个对象应该尽量少地了解其外部对象的细节。这减少了类之间的直接交互,降低耦合,提高系统的可维护性。 这些原则共同构成了面向对象设计的基础,通过它们,开发者可以...