抽象工廠模式:這個模式我總是感覺和builder模式非常相似。
工廠方法模式提供的是對壹個產品的等級模式,,而抽象工廠方法提供的是對多個產品的等級模式,註意,這裏的多個具體產品之間是相互耦合的,也就是說這裏的抽象工廠提供的產品之間是存在某種聯系的。
有人做如下的比較:
工廠方法模式:壹個抽象產品類,可以派生出多個具體產品類。
壹個抽象工廠類,可以派生出多個具體工廠類。
每個具體工廠類只能創建壹個具體產品類的實例。
抽象工廠模式:多個抽象產品類,每個抽象產品類可以派生出多個具體產品類。
壹個抽象工廠類,可以派生出多個具體工廠類。
每個具體工廠類可以創建多個具體產品類的實例。
區別:工廠方法模式只有壹個抽象產品類,而抽象工廠模式有多個。
工廠方法模式的具體工廠類只能創建壹個具體產品類的實例,而抽象工廠模式可以創建多個。