加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

.net – 与我实现它的方式相比,IoC Container如何实现依赖注入

发布时间:2020-12-14 04:49:04 所属栏目:百科 来源:网络整理
导读:要做依赖注入,我可以创建一个不同类型的数据库连接的通用字典,然后通过反射动态地实例化一个类型,然后再将它传递给需要它的对象的构造函数. 使用IOC容器时会带来什么样的差异和好处,因为它不会使我的东西比第一个解决方案更独立. IOC容器如何在内部进行?它
要做依赖注入,我可以创建一个不同类型的数据库连接的通用字典,然后通过反射动态地实例化一个类型,然后再将它传递给需要它的对象的构造函数.

使用IOC容器时会带来什么样的差异和好处,因为它不会使我的东西比第一个解决方案更独立. IOC容器如何在内部进行?它与第一个解决方案不同吗?

如何在没有容器的情况下实施DI?你什么时候切换到IoC容器?

我的意思是除了我想到的那个之外还有其他方法来实现DI,以便我可以使用最好的方法吗?

解决方法

我想一个容器为你做了很多锅炉板代码.例如,它完全按照您的说法执行,根据反映的行为实例化一个类.许多容器还允许您根据配置文件显式配置系统.

IOC或DI仅是概念. IOC / DI概念为您提供了您所青睐的“不依赖”.实际实施可能有所不同.您可以在不使用第三方容器的情况下执行此操作 – 或者编写自己的容器.或者,您可以利用经过充分测试的第三方容器提供的功能.

如果您只想注入不同类型的数据库连接,那么您对IOC / DI的需求非常小.一般来说,IOC / DI(注意,不是容器,这只是IOC / DI的实现)为您提供完全可配置的软件,有助于单元测试(通过注入存根),自我配置等.

通常,IOC / DI在以下情况下是必需的:

>你的软件是如此庞大和复杂,没有任何一个人可以把它全部放在脑海中,或者>有许多不同的配置,您不希望自定义构建,或>在各个部分之间是如此相互依赖,你发现很难单独测试每一件

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读