依赖注入

软件工程中,依赖注入(dependency injection)的意思为,给予调用方它所需要的事物。

编程语言层次下,“调用方”为对象和类,“依赖”为变量。

在提供服务的角度下,“调用方”为客户端,“依赖”为服务。

应该尽可能的让依赖类在最上层初始化

举例

例如,我要一辆车,那么就需要轮胎,我需要一个轮胎,那么就需要一个轮毂,若干螺丝,外胎,内胎,刹车……

那么问题就来了。我应该做的是造车的时候再种橡胶树么?

这样不对啊。

我们应该做的是,在造车的时候,就发现已经有了生产完全的轮胎,直接调用轮胎装上去就行了。至于轮胎里面需要什么东西,我不是重新做,而是直接调用现成的东西。

方案

1、作为构造函数的参数注入

2、提供 Setter 设置值注入

3、接口注入

Last updated