除了编写单元测试友好程序之外,使用依赖注入

时间:2014-05-28 16:46:51

标签: asp.net asp.net-mvc c#-4.0 dependency-injection

除了编写单元测试友好程序之外,依赖注入器的任何用途是什么? 我在几个项目中使用它,我喜欢这种方法。但是我想知道这种模式的真正用途是什么?只给我一次使用,但如果可能,请提供适当的解释和代码。

1 个答案:

答案 0 :(得分:1)

如果您使用Google,请提供大量信息。来自Wikipedia

优势

  • 由于依赖注入不需要对代码行为进行任何更改,因此可以将其作为重构应用于遗留代码。结果是更加独立的客户端,使用存根或模拟其他对象的模拟对象,更容易单独进行单元测试 在测试中。这种易于测试通常是使用依赖注入时注意到的第一个好处。
  • 依赖注入允许客户端删除其需要使用的具体实现的所有知识。这有助于将客户端与设计更改和缺陷的影响隔离开来。它提高了可重用性,可测试性和可维护性。
  • 依赖注入可用于将系统的配置详细信息外部化为配置文件,从而允许在不重新编译的情况下重新配置系统。可以针对需要不同组件实现的不同情况编写单独的配置。这包括但不限于测试。
  • 减少应用程序对象中的样板代码,因为初始化或设置依赖项的所有工作都由提供程序组件处理。
  • 依赖注入允许并发或独立开发。两个开发人员可以独立开发彼此使用的类,而只需要知道类将通过的接口。插件通常由第三方商店开发,甚至从不与创建使用插件的产品的开发人员交谈。