gpt4 book ai didi

design-patterns - 工厂模式。什么时候使用工厂方法?

转载 作者:行者123 更新时间:2023-12-03 04:04:56 24 4
gpt4 key购买 nike

什么时候在对象中使用工厂方法而不是工厂类是个好主意?

最佳答案

我喜欢从我的类是“人”的角度来思考设计模式,而这些模式就是人们相互交谈的方式。

所以,对我来说,工厂模式就像一个招聘机构。你有人需要不同数量的 worker 。此人可能知道他们所雇用的人员需要的一些信息,但仅此而已。

因此,当他们需要新员工时,他们会调用招聘机构并告诉他们需要什么。现在,要实际雇用某人,您需要了解很多东西 - 福利、资格验证等。但雇用的人不需要知道这些 - 招聘机构会处理所有这些那个。

以同样的方式,使用工厂允许消费者创建新对象,而不必知道它们如何创建的详细信息,或者它们的依赖项是什么 - 他们只需要提供他们真正想要的信息。

public interface IThingFactory
{
Thing GetThing(string theString);
}

public class ThingFactory : IThingFactory
{
public Thing GetThing(string theString)
{
return new Thing(theString, firstDependency, secondDependency);
}
}

因此,现在 ThingFactory 的使用者可以获取一个 Thing,而无需了解该 Thing 的依赖关系,除了来自使用者的字符串数据。

关于design-patterns - 工厂模式。什么时候使用工厂方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69849/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com