ioc container 还可以为我们解决依赖管理的问题 .. 应用里的每个功能,多多少少都会有一些依赖,就是一个功能里面会用到其它模块里提供的功能,这个被依赖的功能模块里面可能还会依赖另外一些功能模块 .. 我们需要把所有这些依赖拼凑到一块儿,让它们可以正常工作 ..
先看一下简单的例子 .. 比如应用里需要一个 Redis 数据库功能 .. 所以我们创建了一个类,叫 Redis ... 实例化这个类的时候需要一些配置,这些配置信息单独放在了一个配置文件里, 获取到这些配置数据的功能是另一个类提供的 .. 这个类的名字叫 Config ..
现在应用里的 Redis 会依赖 Config ... 也就是在使用 redis 的时候,要像这样,先创建一个 Config 实例 .. 然后再创建一个 redis 实例,在创建这个实例的时候,要把在 redis 里面需要的获取配置数据功能的这个 config 实例交给它 .. 这样就解决了这个依赖的问题 ..
我们可以把这个 Redis 绑定到 ioc container 里面,在绑定的时候可以先解决 Redis 的依赖问题 ..