面向对象设计原则四:依赖倒置原则

本文详细阐述了依赖倒置原则(DIP),包括其定义、好处及应用方式。强调通过面向接口编程,减少类间耦合度,提高系统稳定性、可维护性和可扩展性。

依赖倒置原则(DIP)
        定义:高层模块不应该依赖底层模块,两者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。
   好处:稳定性、可维护性、可扩展性。
  概述:DI就是依赖倒置的意思,也可称为控制反转,我们以前编写结构化的程序当中,也就是C语言这样的语言时,高层模块依赖于底层模块,也就是调用者和被调用者的关系,调用者要依赖于被调用者,被调用者编写的一些功能和服务,会影响高层,一旦底层发生了变化,也就是被调用者发生了变化,就直接影响了高层也就是调用者。这样的设计,很难保证他的稳定性,经常会发生变化,代码维护起来也非常的困难。
但是在面向对象的设计中,这种设计应该反过来,底层和高层不应该有这样的依赖关系,高层不应该依赖于底层,底层也不应该依赖于高层。底层和高层都应该依赖于抽象类或接口,底层变化,不影响高层。依赖倒置原则:本质上是在要求我们“面向接口编程”,它要求每个类尽量都来自接口或抽象类,变量定义尽量使用抽象类或接口,不要使用具体类,这样便于扩展,尽量不要覆盖父类已经实现好的方法。接口负责公共方法的声明,抽象类负责公共方法实现的定义。
  开闭原则和依赖倒置原则是目标和手段的关系。开闭是目标,可以通过依赖倒置来实现对功能扩展开放,对修改关闭。
  因为依赖倒置原则和开闭原则是手段和目标的关系,也就是依赖倒置原则的好处和开闭原则的好处基本上是一致的,它的好处就是可以减少类之间的耦合度,进一步提高系统的稳定性、可维护性和可扩展性,只不过依赖倒置原则建议尽量使用抽象类和接口,而开闭原则突出的是使用了抽象类和接口之后的效果!

 

转载于:https://www.cnblogs.com/dotnet261010/p/7351484.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值