.net 国际奥委会的企业模式
我在研究企业模式,我在阅读 我刚读了第五章,但我还是很困惑。。。据我所知,IoC应该从其他类中删除依赖项,对吗?又称松耦合 我还读到,这很好,因为如果重建具体的类,它不会破坏依赖于它的对象 我明白这意味着,如果我重建程序集(.dll),它将不需要我重建引用它的其他项目,对吗 但是书中的示例在项目中引用了它,并且做了很多事情来获得一个类的实例,这让我感到困惑 我认为最终的结果是动态加载程序集并在其中创建具体类的实例,比如MEF.net 国际奥委会的企业模式,.net,dependency-injection,ioc-container,.net,Dependency Injection,Ioc Container,我在研究企业模式,我在阅读 我刚读了第五章,但我还是很困惑。。。据我所知,IoC应该从其他类中删除依赖项,对吗?又称松耦合 我还读到,这很好,因为如果重建具体的类,它不会破坏依赖于它的对象 我明白这意味着,如果我重建程序集(.dll),它将不需要我重建引用它的其他项目,对吗 但是书中的示例在项目中引用了它,并且做了很多事情来获得一个类的实例,这让我感到困惑 我认为最终的结果是动态加载程序集并在其中创建具体类的实例,比如MEF 有人能给我解释一下吗?IoC不仅仅用于删除依赖项。程序集和类没有紧密耦
有人能给我解释一下吗?IoC不仅仅用于删除依赖项。程序集和类没有紧密耦合。你可以随时更换它们 但其中一个主要方法是在运行时更改依赖项以及使用的类和对象。您可以要求IoC容器为您提供一个业务处理程序类,而无需关心返回给您的是什么类。IoC容器将决定返回实例的类,您可以为其提供此逻辑 IoC(DI)删除了紧密耦合的依赖项,并且还具有一些逻辑,用于根据每种情况创建不同的对象类型、处理程序和业务提供者,您无需在运行时关心它们 它试图解决哪些问题?
- 解耦系统中的组件和层
- 减轻组件管理其依赖关系的责任
- 在不同环境中交换依赖项实现
- 允许通过模拟依赖项来测试组件
- 提供在整个应用程序中共享资源的机制
- 使测试代码更容易。没有它,您正在测试的代码很难隔离,因为它将与系统的其余部分高度耦合
- 在开发模块化系统时非常有用。无需重新编译即可替换组件
它将解释许多基本概念,帮助您理解企业级模式谢谢。。。但我仍然没有看到它的好处。。。也许我遗漏了一些东西。编辑后提供了一个简单的列表,但请记住,要了解IoC在您的应用程序中的真正位置,您应该在企业架构和设计方面有良好的经验。这是一篇关于此主题的好文章: