簡單工廠模式相當於是乙個4s店中有各種汽車,建立在乙個類中,客戶無需知道具體汽車型號,只需要知道汽車類所對應的引數即可。但是工廠的職責過重,而且當型別過多時不利於系統的擴充套件維護。
#現代汽車4s店類
class
carstore
(object):
#示例方法 建立工廠返回工廠物件引用
def__init__
(self):
self.factory = factory()
#實現業務
deforder
(self, car_type):
return self.factory.select_car_by_type(car_type)
#工廠類
class
factory
(object):
#具體實現
defselect_car_by_type
(self, car_type):
if car_type=="索納塔":
return suonata()
elif car_type=="名圖":
return mingtu()
elif car_type=="ix35":
return ix35()
#汽車父類
class
car(object):
defmove
(self):
print("車在移動....")
defmusic
(self):
defstop
(self):
print("車在停止....")
#具體汽車類
class
suonata
(car):
pass
class
mingtu
(car):
pass
class
ix35
(car):
pass
car_store = carstore()
car = car_store.order("索納塔")
car.move()
car.music()
car.stop()
Python簡單工廠模式
簡單工廠屬於類的創新性模式,又叫靜態工廠方法模式。是專門通過定義乙個類來負責建立其他類的例項,被建立的例項通常都具有相同的父類。模式特點 工廠工具條件產生不同功能的類。簡單工廠的組成要素 負責具體產品物件的建立工作,是該模式的核心。當場景比較負責的時候,可能需要 乙個工廠類來負責產品的建立。以及產品...
python 簡單工廠模式
abc 是抽象類模組 abc.abc 是繼承抽象類 也可直接繼承 metaclass abcmeta abc.abstractmethod 是定義抽象方法 簡單工廠模式 通過介面建立物件,但不會暴露物件建立邏輯 在設計模式中主要用於抽象物件的建立過程,讓使用者可以指定自己想要的物件而不必關心物件的例...
Python 設計模式 簡單工廠模式
簡單工廠模式,作為oo 乙個較為簡單的建立者設計模式。其主要思想,通過介面或繼承建立 不同的子類。現在乙個dom解析器作為父類,其中xml,soup 分別作為兩個不同解析方式,作為子類。vechicl 的建立 如下 1 外部依賴的介面,它遮蔽了我具體使用的第三方庫 2class omtree 3de...