每当我看到工厂设计模式时,它总是有一个简单的new FactoryName.build()
方法。在创建对象时,它们有依赖关系,但在我的情况下,我有一个现有项目,在运行时比在初始化时操作更多(想想现有的、复杂的代码库,而不是简单的工厂设计示例)。因此,为了注入所需的依赖项,我的实现不可能build
只实现为return new Blah(new This(), new That())
.
那么,如果我想将参数传递给构建(例如:build(SomeENUM type)
,和/或什至在构建中自动检测依赖项(例如:),该some logic to auto-detect SomeENUM type
怎么办。其中一个或两个本身是错误的?