现在有2种产品需要生产,各个工厂模式的方式
简单工厂:
产品类和工厂类耦合在一起。
有一个工厂,里面有二条流水线,只能生产A、B,如果工厂要增加新产品,需要对工厂进行翻修,要有第三条流水线。
工厂方法:
产品类未抽象,工厂抽象出来了。
A工厂里一条流水线生产A,B工厂一条流水线生产B,如果此时要有第三种产品,则有C工厂去生产C。
父工厂通过统一的装修模式,来声明A、B、C三个工厂的所有权。
抽象工厂:
产品和工厂都抽象出来了,完全解耦合。
A工厂里一条流水线生产A,B工厂一条流水线生产B,如果此时要有第三种产品,则有C工厂去生产C。
父工厂通过统一的装修模式,来声明A、B、C三个工厂的所有权。
父产品通过统一包装,来声明三种产品是同一家公司生产。