假定的环境是一个汽车厂吧, 将轮胎, 引擎, 车身组装成汽车.
下面是涉及到的实体模型
汽车厂是负责组装的, 产品是汽车.
往往, 我们需要让组装成为一个流水线.
但是, 我们为了满足这样一种需求: 各种厂商生产的零件都可以在我们的流水线上装配成汽车. 那么我们需要指定标准, 这个标准对应的就是车门, 车身, 引擎这几个接口.
下面是组装的流水线:
流水线中负责的只是装配, 他需要的只是符合既定接口的零件, 所以, 这里我们就可以通过IOC来向流水线提供零件....
流水线内部只需要规定, 进入流水线的零件必须符合哪些接口.
外部, 根据当时厂内的库存, 以及市场需求, 实时的为流水线提供符合标准的不同厂商的零件.
因此, IOC在将控制权提取出来的同时, 实际上是给我们的系统的可扩展性带来了很大的提升.
不当之处, 请高手指正...