控制反转和依赖注入的理解

什么是控制反转(IOC)

平时我们使用类的对象,需要自己new一个 然后调用。控制反转就是不自己实例化 而是交给第三方实例化,这里的第三方就叫做IOC容器。

控制反转这个名字就是相对于我们平时的使用模式起的,之前是我们自己控制类的实例化,现在由第三方实例化,这里对于对象的控制责任就反转到IOC容器手上了。

控制反转不是具体的技术,而是一种思想 只要是实现这个思想的技术都可以叫做控制反转

什么是依赖注入

依赖注入是控制反转发挥作用的方式

平时我们在代码中调用某个类需要指定这个类的依赖关系,同时如果这个类改动了(比如构造方法改变) 那么还需要在调用处修改

依赖注入追求的就是解耦,当我们使用IOC容器实例化对象、注入对象时,这些对象间的依赖关系就转交给IOC容器管理了。依赖关系就解耦了

PS

1、控制反转和依赖注入都是思想而不是具体技术,我们可以使用具体技术实现这种思想

2、控制反转和依赖注入是一套武学礼包,控制反转是内功秘籍,依赖注入是和控制反转这个内功配套的外功秘籍

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章