抽象工厂模式的定义
定义: 为创建一组相关或互相依赖的对象提供一个接口,而且无须制定它们的具体类
抽象工厂模式的实现
两个产品族, 其类图如下:
?
抽象产品类代码如下:
?...这样在使用时,我们只要知道它的工厂方法就可以直接产生一个产品对象,无需关心它的实现类
抽象工厂模式的优缺点
优点如下;
封装性,每个产品的实现类不是高层模块要关心的,他只要关心接口、抽象,不关心对象是如何创建的...抽象工厂模式应该有一个约束, 每生产一个A产品,同时生产2个B产品, 这样的生产过程对调用工厂类的高层模块来说是透明的, 高层模块不需要知道这个约束, 只要给出一个具体的产品即可
缺点如下:
产品族扩展非常困难...抽象工厂模式的使用场景
一个对象族(或是一组没有任何关系的对象)都有相同的约束,则可以使用抽象工厂模式....于是我们可以使用抽象工厂模式, 产生不同操作系统下的编辑器和图片处理器
----
抽象工厂模式是一个简单的模式,使用的场景非常多,在软件产品生产过程中,涉及不同操作系统的时候,都可以考虑使用抽象工厂模式