了解下依赖注入模式

依赖注入(Dependency Injection)是一个软件设计形式,它可以帮你去除硬编码依赖。比如,你要静态加载一些插件;或许,你想要在测试环境下运用模拟的对象,在真实环境下运用真实的对象。在知道调用者的需求后,这个形式会自动把被调用者(对象、值 等等)注入到调用者中。

依赖注入触及到至少 3 个元素:

调用者(依赖者);

一份依赖的声明,以接口方式定义;

一个注入器(有时也叫:提供者、容器),它能创立完成了接口(定义依赖的接口)的类的实例。

调用者会描画它需求哪些被调用者才干正常任务。再由注入器来决议哪些详细的完成能满足调用者的需求,并提供应调用者。

在传统的软件开发中,调用者是自己来决议运用哪些被调用者的完成的。但是在依赖注入形式中,这个决议权授权给了注入器,注入器能在软件运转的时分选择交流不同的完成,而不是在编译时。这也是依赖注入的关键优势。

依赖注入形式除了在复杂软件的测试时特别有用,还经常用于定位组件,或许定位、初始化软件中的效劳。

支持依赖注入的框架,在 Wiki 上也列了很多。比如 Java 的 Spring,PHP 的 Zend Framework 2、Symfony 2,等。

提供最优质的资源集合

立即查看 了解详情