生成器模式与抽象工厂模式的区别
声明:转载
抽象工厂是创建一系列的产品供客户代码使用,而生成器模式是生成多个产品后组合成一个产品供客户代码使用。生成器模式可以精确控制产品如何组合。
-
因此在使用产品系列时,采用抽象工厂模式;而在需将将一系列产品组合成一个产品时,使用生成器模式
-
2.Builder与Abstract Factory的区别:
刚开始的时候,我也觉得Builder和Abstract Factory差不多,深入了解后才发觉,它们之间也是有区别的,虽然它们都是生成新对象给使用者,也可以创建复杂对象,不过Abstract Factory是立即生成新的对象,有实时性,而Builder则有可能需要多种条件都符合的时候才能生成新的对象,有一定的延时性,按通俗的话说,Abstract Factory是原材料齐全的加工厂,有需求马上就能生产;而Builder则是等待其它部件或原材料都到位的时候才能生产出新的产品。