详细介绍 IOC 和 DI
全栈自学社区
共 2991字,需浏览 6分钟
·
2021-04-26 07:46
点击关注,与你共同成长!
学习过 Spring 框架的人一定都会听过 Spring 的 IoC (控制反转) 、DI (依赖注入)这两个概念,对于初学 Spring 的人来说,总觉得 IoC 、DI 这两个概念是模糊不清的,是很难理解的,今天和大家分享网上的一些技术大牛们对 Spring 框架的 IOC 的理解以及谈谈我对 Spring Ioc 的理解。
1、IOC是什么
用图例说明一下,传统程序设计如图1,都是主动去创建相关对象然后再组合起来:
当有了IOC的容器后,在客户端类中不再主动去创建这些对象了,程序的结构图变成如图2所示:
2、IoC能做什么
有了IOC容器后,把创建和查找依赖对象的控制权交给了容器,由容器进行注入组合对象,所以对象与对象之间是松散耦合,这样也方便测试,利于功能复用,更重要的是使得程序的整个体系结构变得非常灵活。
3、IOC和DI
为什么需要依赖:应用程序需要 IOC 容器来提供对象需要的外部资源;
谁注入谁:很明显是 IOC 容器注入应用程序某个对象,应用程序依赖的对象;
注入了什么:就是注入某个对象所需要的外部资源(包括对象、资源、常量数据)。
4、IOC 和 DI 的意义
作者:fuzhongmin05
以上,便是今天的分享,希望大家喜欢,觉得内容不错的,欢迎「分享」「赞」或者点击「在看」支持,谢谢各位。
评论