DI容器思想:
DI容器底层最基本的设计思路就是基于工厂模式的。 DI容器相当于一个大的工厂类,负责在程序启动的时候,根据配置 (要创建哪些类对象,每个类对象的创建需要依赖哪些其他类对象)事先创建好对象。 当应用程序需要使用某个类对象的时候,直接从容器中获取即可。
工厂模式与DI容器的异同:
工厂模式中,一个工厂类只负责某个类对象或者某一组相关类对象(继承自同一抽象类或者接口的子类)的创建。 DI容器负责的是整个应用中所有类对象的创建、解析配置 以及 对象生命周期的管理。