大多数引用的示例都是关于依赖注入(inject)的使用,我们也可以使用工厂模式来解决。看起来在使用/设计方面,依赖注入(inject)和工厂之间的区别是模糊的或薄弱的。
曾经有人告诉我,使用它的方式会产生影响!
我曾经用过StructureMap一个 DI 容器来解决问题,后来我重新设计它以与一个简单的工厂一起使用,并删除了对 StructureMap 的引用。
谁能告诉我它们之间有什么区别,在哪里使用什么,这里的最佳实践是什么?
最佳答案
当使用工厂时,您的代码实际上仍然负责创建对象。通过 DI,您可以将该责任外包给另一个类或框架,这些类或框架与您的代码是分开的。
关于dependency-injection - 依赖注入(inject)与工厂模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/557742/