`

设计原则---最少知识原则

 
阅读更多

设计原则---最少知识原则(LKP)

     最少知识指的是:只和朋友说话.降低类之间的耦合,尽量减少对象的交互.

  一个对象如何先择朋友:

1.当前对象本身.

2.通过方法传进来的参数对象.

3.当前对象所创建的对象.

4.方法内部实例化的对象.

总之:方法的调用要尽量保持在一定的界限内.降低对象之间的依赖.

 

分享到:
评论

相关推荐

    设计模式(十二)迪米特原则(最少知识原则).zip

    迪米特(最少知识)法则:如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。

    设计模式(23种)与设计原则(6种)

    6、最少知识原则 (二)设计模式 1)工厂模式(Factory) 2)抽象工厂模式(Abstract Factory) 3)建造者模式(Builder) 4)原型模式(Prototype) 5)单例模式(Singleton) 6)适配器模式(Adapter) 7)桥接...

    软件设计6原则

    单一责任原则 开放封闭原则 依赖到转原则 里氏替换原则 最少知识原则 迪米特法则

    Java面向对象程序设计杨晓燕面向对象基本原则和模式.pptx

    单一职责原则和最少知识原则 最少知识原则(Least Knowledge Principle, 简称为LKP)又叫迪米特法则(Law of Demeter,简写为LoD),就是说一个对象应当对其他对象有尽可能少的了解。就像我国古代老子所说的"使民...

    java设计模式源码-head-first-design-patterns-Java:HeadFirst设计模式源码JAVA版

    最少知识原则:只和你的密友谈话。 这是什么意思?当你正在设计一个系统,不管是任何对象,你都要注意它所交互的类有哪些,并注意它和这些类是如何交互的。 这个原则希望我们在设计中,不要让太多的类耦合在一起,...

    asp.net知识库

    深入剖析ASP.NET组件设计]一书第三章关于ASP.NET运行原理讲述的补白 asp.net 运行机制初探(httpModule加载) 利用反射来查看对象中的私有变量 关于反射中创建类型实例的两种方法 ASP.Net应用程序的多进程模型 NET委托...

    java版中国象棋源码-hello-design-pattern:设计模式学习笔记

    也叫最少知识原则。公司电脑坏了,是找IT部还是IT部的某个人?如果那个人不在怎么办? 如果两个类不必彼此直接通信,那么这两个类就不应当发生直接关系。如果其中一个类需要调用另一个类的方法,可以通过第三者转发...

    design-patterns

    #设计模式 Christopher Alexander 说:“每... 最少知识原则 - 只和你最直接的朋友交谈。(*) 好莱坞原则 - 不要打电话给我们,我们会打电话给你。 单一职责——一个类应该只有一个改变的理由。 ##OO 模式:## 战略

    JavaScript-DesignPatterns:JavaScript设计模式

    最少知识原则 (LKP)一个软件实体应该尽可能少地与其他实体发生相互作用。应当尽量减少对象之间的交互。如果两个对象之间不必彼此直接通信,那么这两个对象就要尽量不要发生直接的相互联系,可以转交给第三方处理。...

    12种常用设计模式C#代码示例

    7、最少知识原则:只和你的密友谈话。 1,策略模式:定义了算法族,分别封装起来,让它们之间可以互相替换,次模式让算法的变化独立于使用算法的客户。 2,观察者模式:定义了对象之间的以对多依赖,这样一来,当...

    head-first-design-patterns:与“ Head First设计模式”书有关的源代码。 在基于.NET的解决方案中实现了本书中的一些设计模式示例

    最少知识的原则:仅与您的直属朋友交谈。 好莱坞原则:请勿致电给我们,我们会致电给您。 坚硬的小号英格尔-责任:一类应该有一个和唯一原因的变化之一,这意味着一个类应该只有一个工作。 O封闭式:应该为扩展而...

    design-patterns:NET Core的C#优先设计模式实现

    #设计模式 OO模式 面向对象原则 ... 最少知识的原则:仅与您的直属朋友交谈。 好莱坞原则:请勿致电给我们,我们会致电给您。 一个班级只有一个改变的理由。 您需要.NET Core 3.1才能运行这些示例。

    java简易投票系统源码下载-DesignModeDemo:23种设计模式swift实现

    5、迪米特法则(最少知识原则) 一个实体应当尽量少地与其他实体之间发生相互作用,使得系统功能模块相对独立。 6、合成复用原则 尽量使用合成/聚合的方式,而不是使用继承。 7、开闭原则 对扩展开放,对修改关闭 二、...

    计算机二级公共基础知识

    算法基本设计方法:列举法、归纳法、递推、递归、减半递推技术、回溯法。 (5)指令系统 所谓指令系统指的是一个计算机系统能执行的所有指令的集合。 (2)数据结构研究的3个方面 ① 数据集合中各数据元素之间所固有...

    designmode:23种设计模式深入剖析

    而不是建立一个庞大的臃肿的接口,容纳所有的客户端访问迪米特法则:最少知识原则,一个对象应该对其他对象有最少的了解,通俗的讲,一个类应该对自己耦合或调用的类知道的最少,更明确的说法是,当一个类与其他类...

    根据黑盒测试技术设计测试用例

    根据黑盒测试技术设计测试用例,主要考虑等价类划分...(2) 根据所学知识确定优化策略(原则:用最少的用例检测出更多的缺陷、软件测试的充分性与冗余性考虑),设计测试用例; (3) 根据设计的测试用例集进行测试;

    design_pattern:javascript常用设计模式

    最少知识原则 原则核心:一个软件实体应当尽可能少地与其他实体发生相互作用 设计模式体现: 中介者模式:通过中介者对象封装一系列对象之间的交互,使对象之间不再相互引用,降低他们之间的耦合。 外观模式:为一组...

    torchingup:TorchingUp提供了用PyTorch编写的常见强化学习算法的最少实现。 它旨在补充OpenAI的SpinningUp存储库,该存储库包含在Tensorflow中实现的类似算法

    为了让您专注于重要的学习知识,我们遵循了一套代码设计原则(见下文),这些原则在各种算法中都保持一致。 安装 安装很简单。 该代码与Python 3兼容,并且具有最小的依赖性。 使用或设置一个称为torchingup的虚拟...

    learn-road-map:学习路线图

    Learn Road Map 这是知识爆炸:collision:的...少即是多,坚持遵循最小最少必要原则,即以最小量的资源最必要的知识帮助读者快速入门和实践 一切理论都敌不过实践,学到的知识要能做到可以用、能够用、马上用 Content

    C++设计模式迪米特法则实例

    迪米特法则(Law of Demeter)又叫作最少知识原则(Least Knowledge Principle 简写LKP),就是说一个对象应当对其他对象有尽可能少的了解,不和陌生人说话。英文简写为: LoD. 类的设计接口尽量封装完善,让外部直接...

Global site tag (gtag.js) - Google Analytics