关于抽象工厂模式

下面这两幅图哪个算是抽象工厂模式,还是说都是抽象工厂模式,只不过抽象的方法不一样,哪种抽象更好一点?

4个回答

我认为这两个应该都算是“抽象工厂”(当然还要包含你没有给出的“产品族”的层次结构)。
这两个的不同之处就在于对要解决的问题抽象出了不同的解决方案,也就是说是看待问题的角度不同,造成了差异性的设计。
至于哪个好,我只是觉得第一个抽象更符合我的第一意识。但是具体那个方案能更好的解决问题,还要看具体问题是什么

第一个是抽象工厂。

creator负责generate一个产品族。

根据"开-闭"原则来说,抽象工厂是对产品族"开放"。
比如增加一个mac的button,textbox的话只需要增加对应的工厂,对应的button,textbox的impl就可以了

第二个看上去不是抽象工厂,可能要换个维度来看喽。

两个都是,哪个更适合你的应用那个就更好

我觉得第二种比较好,看你实际需求。。。。。。。。。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐