(51)--14-6 面向对象设计原则 依赖倒置原则 面向对象与UML.pdf
《(51)--14-6 面向对象设计原则 依赖倒置原则 面向对象与UML.pdf》由会员分享,可在线阅读,更多相关《(51)--14-6 面向对象设计原则 依赖倒置原则 面向对象与UML.pdf(17页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 面向对象与面向对象与UML Object-Oriented and UML 面向对象设计原则面向对象设计原则 Object-Oriented Design Principles -3-3-面向对象的基本设计原则面向对象的基本设计原则(1)LSP:Liskov(里氏里氏)替换原则替换原则 Liskov Substitution Principle(2)OCP:开放:开放-封闭原则封闭原则 Open-Close Principle(3)SRP:单一职责原则:单一职责原则 Single Responsibility Principle(4)ISP:接口隔离原则:接口隔离原则 Interface S
2、egregation Principle (5)DIP:依赖倒置原则:依赖倒置原则 Dependency Inversion Principle(6)CARP:组合组合/聚合复用原则聚合复用原则 Composite/Aggregate Reuse Principle(7)LOD(LKP):迪米特法则迪米特法则(最少知道原则最少知道原则)Law of Demeter(Least Knowledge Principle)DIP(Dependency Inversion Principle)依赖倒置原则依赖倒置原则 DIP依赖倒置原则定义依赖倒置原则定义 1.高层模块不应该依赖于低层模块,二者都应该
3、依赖于抽象。高层模块不应该依赖于低层模块,二者都应该依赖于抽象。2.抽象不应该依赖于细节,细节应该依赖于抽象。抽象不应该依赖于细节,细节应该依赖于抽象。另一种表述为:另一种表述为:1.要依赖于抽象,不要依赖于具体。要依赖于抽象,不要依赖于具体。2.要针对接口编程,不要针对实现编程。要针对接口编程,不要针对实现编程。什么叫依赖?什么叫依赖?在程序设计中,如果一个模块在程序设计中,如果一个模块A使用使用/调用了另一个模块调用了另一个模块B,我们称模块,我们称模块A依赖模块依赖模块B。DIP依赖倒置原则依赖倒置原则 所谓“所谓“倒置倒置”是相对于传统的开发方法(例如结构化方法)中总是倾”是相对于传统
4、的开发方法(例如结构化方法)中总是倾向于让向于让高层模块依赖于低层模块高层模块依赖于低层模块而言的软件结构而言的。而言的软件结构而言的。高层模块与低层模块高层模块与低层模块 在一个应用程序中,有一些低层次的类,这些类实现了一些基本的或在一个应用程序中,有一些低层次的类,这些类实现了一些基本的或初级的操作,称之为初级的操作,称之为低层模块低层模块;有一些高层次的类,这些类封装了某些复杂的逻辑,并且依赖于低层有一些高层次的类,这些类封装了某些复杂的逻辑,并且依赖于低层次的类,这些类称之为次的类,这些类称之为高层模块高层模块。高层模块包含了一个应用程序中的重要的策略选择和业务模型,低层高层模块包含了
5、一个应用程序中的重要的策略选择和业务模型,低层包含更多的实现细节包含更多的实现细节,平台相关细节等平台相关细节等。高层依赖低层存在的问题高层依赖低层存在的问题 1.1.难以复用。难以复用。如果高层依赖于低层如果高层依赖于低层,那么对低层模块的改动就会直接影响到高层模那么对低层模块的改动就会直接影响到高层模块块,从而迫使它们依次做出改动。从而迫使它们依次做出改动。2.2.难以维护。难以维护。因为低层通常是易变的。因为低层通常是易变的。层次化层次化 所有良构的所有良构的OO体系结构都具有体系结构都具有清晰的清晰的层次定义层次定义,每个层次通过,每个层次通过一个定义良好的、受控的接口向一个定义良好的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 51-14-6 面向对象设计原则 依赖倒置原则 面向对象与UML 51 14 面向 对象 设计 原则 依赖 倒置 UML
限制150内