下面是一本书中给出的一个原因,即由于对象创建的复杂性,将工厂助手类分配给委托创建对象。 这就是“根据某些外部属性值”有条件地从一个类似类别中的一个创建对象“。 我无法弄清楚这种情况。任何人都可以通过上面的例子来帮助。
答案 0 :(得分:4)
在我的公司,我们处理麦克风和多个平台。
我们有createMicrophoneRecorderSource(...)
在Linux上,我们创建了一个ALSA麦克风。在Windows上我们使用WASAPI,在iOS上我们使用...本机iOS的东西,我不记得确切的名称。
用户不必费心知道什么是什么,我们隐藏了工厂内所有的血腥细节。
答案 1 :(得分:1)
工厂是制造物体的任何东西。构造函数已经是工厂了。如果您需要其他方法来制作对象,您可以制作更多工厂。如果额外的行为取决于班级不应该关心的事情,有时你会把它们放在课堂外面。