一个东西(Object)需要其它东西提供的功能,就把这些提供功能的东西附加到需要它们的东西里面,这就是依赖注入。从字面意思去理解,不用考虑的太复杂了。依赖注入,就是注入需要的依赖的东西。
看个例子,有个类叫 ImageController,它里面的 index 方法可以返回所有的图像资源,在这个方法里依赖 ImageService 里面提供的服务,它会帮 ImageController 的 index 方法找到需要的图像资源。
不使用依赖注入
ImageController 需要 ImageService 里的功能,如果不使用依赖注入的方式,代码大概像这样: