`
dq1618
  • 浏览: 57609 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论
阅读更多
在进行业务设计时,与特定业务有关的依赖关系应该尽量依赖接口和抽象类,而不是依赖于具体类。具体类只负责相关业务的实现,修改具体类不影响与特定业务有关的依赖关系。

  在结构化设计中,我们可以看到底层的模块是对高层抽象模块的实现(高层抽象模块通过调用底层模块),这说明,抽象的模块要依赖具体实现相关的模块,底层模块的具体实现发生变动时将会严重影响高层抽象的模块,显然这是结构化方法的一个"硬伤"。

  面向对象方法的依赖关系刚好相反,具体实现类依赖于抽象类和接口(见图-1)。

  为此,我们在进行业务设计时,应尽量在接口或抽象类中定义业务方法的原型,并通过具体的实现类(子类)来实现该业务方法,业务方法内容的修改将不会影响到运行时业务方法的调用。



图1依赖原则图示

分享到:
评论

相关推荐

    ADP无环依赖原则ppt

    有用到设计模式 又要上讲台讲PPT的可以参考下 不在多在精

    设计模式6大原则:依赖倒置原则

    设计模式6大原则:依赖倒置原则

    依赖倒置原则Demo

    依赖倒置原则(Dependency Inversion Principle,DIP)是面向对象设计的基本原则之一,由罗伯特·C·马丁(Robert C. Martin)提出。这个原则指出,高层次的模块不应该依赖于低层次的模块,两者都应该依赖其抽象;...

    依赖倒置原则-软件工程思想

    ### 依赖倒置原则在软件工程中的应用 #### 引言 依赖倒置原则(Dependency Inversion Principle,简称 DIP)是面向对象设计的核心原则之一,由著名软件工程师 Robert C. Martin 在其专栏文章中提出。该原则对于...

    设计模式之依赖倒转原则

    依赖倒转原则(Dependency Inversion Principle,DIP)是面向对象设计的基本原则之一,它在软件工程中扮演着至关重要的角色。这个原则主要是为了降低模块之间的耦合度,提高系统的可扩展性和可维护性。在C#编程语言...

    依赖倒转原则例子程序DIP.zip

    依赖倒转原则(Dependency Inversion Principle,简称DIP)是软件设计中的一个重要原则,它属于SOLID设计原则之一。这个原则由Robert C. Martin在1994年提出,其核心思想是“高层模块不应该依赖于低层模块,两者都...

    面向对象的11个原则

    此外,还有其他六个包的设计原则,它们分别是发布/重用等价原则、公共闭合原则、共同重用原则、非循环依赖原则、稳定依赖原则和稳定抽象原则。 **单一职责原则 (Single Responsibility Principle, SRP)**:一个类或...

    Maven传递依赖和依赖的规则.docx

    本文将深入探讨Maven的传递依赖和依赖原则。 **一、Maven传递依赖** 传递依赖是指在Maven项目中,当一个项目A依赖于另一个项目B,而项目B又依赖于项目C时,项目A间接地依赖于项目C。这种关系使得A可以通过B来间接...

    61条面向对象设计的经验原则

    朝稳定方向依赖原则 - **原则描述**:“朝着稳定的方向进行依赖。” - **解释**:在设计系统时,类之间的依赖关系应该指向更稳定、变化较少的部分。这有助于降低由于变化导致的问题传播风险。 #### 13. 避免全能类...

    Java_面向对象设计原则总结

    7 无环依赖原则-The Acyclic Dependencies Principle (ADP) 8 稳定依赖原则-The Stable Dependencies Principle (SDP) 9 稳定抽象等价原则-The Stable Abstractions Principle (SAP) 10 共同封闭原则-The...

    OO设计原则 -- OO设计的 DIP依赖倒置原则

    ### OO设计原则 -- OO设计的 DIP依赖倒置原则 #### 概述 在软件工程领域,特别是面向对象设计中,依赖倒置原则(Dependency Inversion Principle, DIP)是六大设计原则之一,由著名软件架构师Robert C. Martin提出...

    面向对象的设计原则详解

    9. 无环依赖原则(Acyclic Dependencies Principle, ADP): 包之间的依赖关系应该是有向无环的。这意味着包的依赖结构应该是一个有向的树形结构,防止形成循环依赖,从而降低系统的复杂性和维护难度。 遵循这些...

    java设计原则16种:总结完整版(PDF)

    无环依赖原则(The Acyclic Dependencies Principle, ADP) **定义**:该原则指出,依赖关系形成的依赖图中不应存在环形依赖。 **原理**:环形依赖会导致包之间的相互依赖,这使得包之间的关系变得复杂,增加了...

    面向对象基本原则 面向对象基本原则

    良性依赖原则强调:“不会在实际中造成危害的依赖关系,都是良性依赖。”这一原则鼓励我们在设计系统时采取实用主义的态度,避免过度设计,同时也要警惕那些可能会在未来带来问题的依赖关系。通过识别哪些依赖是安全...

    依赖倒转原则

    依赖倒置原则(Dependence Inversion Principle,简称DIP)这个名字看着有点别扭,“依赖”还“倒置”,这到底是什么意思?依赖倒置原则的原始定义是:High level modules should not depend upon low level modules...

    技术架构视图-设计原则与模式

    而包的设计原则则包括发布与复用等价原则、共同封闭原则、共同复用原则、无循环的依赖原则、稳定的依赖原则以及稳定的抽象原则。这些原则共同作用,帮助开发者构建出既满足当前需求又易于未来维护和扩展的高质量软件...

    8包设计原则(二)-MOOC课程内容.pdf

    本节内容主要介绍了两种重要的包设计原则:稳定依赖原则(SDP)和稳定抽象原则(SAP)。这些原则由Robert C. Martin提出,并在软件工程领域得到了广泛的认可和应用。以下是这两个原则的详细解释以及它们在实际应用中...

    面向对象设计原则_达内培训

    9. **ADP无依赖原则**:在包的依赖关系中不允许存在环。这有助于避免循环依赖,保证系统的稳定性和可预测性。 10. **SDP稳定依赖原则**:朝着稳定的方向进行依赖。通常,高层设计的软件(如抽象类)应该位于稳定的...

    敏捷软件开发

    面向对象设计的原则 SRP 单一职责原则 就一个类而言,应该仅...ADP 无环依赖原则 在包的依赖关系圈中不允许存在环。 SDP 稳定依赖原则 朝着稳定的方向进行依赖。 SAP 稳定抽象原则 包的抽象程度应该和其稳定程度一致。

Global site tag (gtag.js) - Google Analytics