首页  >  文章  >  什么是依赖注入

什么是依赖注入

清浅
清浅原创
2019-04-01 16:48:017121浏览

依赖注入使一种实现控制反转且解决依赖性问题的设计模式,它有三种类型分别为构造函数注入,属性注入以及方法注入。它具有减少依赖性增强组件的可重用性等好处

依赖注入(DI)是一种设计模式,它可以消除编程代码之间的依赖性,因此可以很容易地管理和测试应用程序。接下来在文章中将为大家具体介绍什么是依赖注入,具有一定的参考作用,希望对大家有所帮助

什么是依赖注入

【推荐课程:Spring教程

依赖注入:

在编程中,依赖注入是一种实现控制反转且用于解决依赖性问题的设计模式。一个依赖关系指的是可被利用的一种对象 。依赖注入是将所依赖的传递给将要使用的从属对象。该服务将会变成客户端状态的一部分并传递服务给客户端,而不允许客户端来建立或寻找服务。依赖注入使我们的编程代码变得松散耦合,易于管理

什么是依赖注入

依赖注入的类型:

注入类将服务(依赖项)注入客户端(依赖),可分为以下几种形式

(1)构造函数注入:在构造函数注入中,注入器通过客户端类构造函数提供服务(依赖性)。

(2)属性注入:在属性注入(又名Setter注入)中,注入器通过客户端类的公共属性提供依赖性。

(3)方法注入:在这种类型的注入中,客户端类实现一个接口,该接口声明方法以提供依赖性,并且注入器使用此接口来提供对客户端类的依赖性。

依赖注入的好处:

(1)减少依赖性

依赖注入可以消除或者减少组件间不必要的依赖性。以降低组件改变时所带来的影响组件

(2)增强可重用性

减少组件依赖性可以增强组件的可重用性。如果在不同的上下文中需要某个接口的不同实现,或者只是同一实现的不同配置,则可以将该组件配置为使用该实现。无需更改代码。

(3)增加代码的可测试性

依赖注入也增加了组件的可测试性。当依赖项可以注入组件时,意味着可以注入这些依赖项的模拟实现。模拟对象用于测试作为实际实现的替代,并且可以配置模拟对象的行为

(4)增强代码的可读性

依赖注入可将依赖项移动到组件的接口。使得更容易看到组件中哪些具有依赖关系,从而使代码更具可读性。

(5)减少依赖性承载

依赖性承载会在代码中产生大量“噪音”,使其难以阅读和维护,并且使得组件更难测试。而依赖注入可以减少依赖性承载和静态单例的使用,可以将组件完美的连接在一起

总结:以上就是本篇文章的全部内容,希望对大家有所帮助

以上是什么是依赖注入的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn