您當前的位置:首頁 > 繪畫

Python設計模式:建造者模式

作者:由 克里斯同學 發表于 繪畫時間:2019-08-16

和工廠模式不一樣,工廠模式是直接返回一個產品(或工廠),輸入輸出,相當直接,建造者模式就要辛苦一點,

需要指揮者指揮建造者工作之後,才能獲得產品

,所以建造者模式需要

指揮者

建造者

兩個角色。

① 建造者

建造者顧名思義,就是搬磚幹活的,所以他

應該有各種幹活的能力

,這樣指揮者才好指揮他們幹活,下面是一個能建酒店的建造者。

class

HotelBuilder

@classmethod

def

get_material

cls

):

print

“正在搬運酒店建築材料。。。”

return

cls

@classmethod

def

building

cls

):

print

“正在修建酒店。。。”

return

cls

@classmethod

def

complete

cls

):

print

“修建酒店已完工”

return

“酒店”

② 指揮者

指揮者毫無疑問就是指揮人幹活的,雖然不用每事親力親為,但他

需要很清楚幹活的步驟

,這樣才能發揮他的領導才能。

class

Director

def

__init__

self

builder

):

self

builder

=

builder

def

direct

self

):

building

=

self

builder

get_material

()

building

()

complete

()

print

f

{building}

已建成”

return

building

③ 開始幹活

把酒店建造者給指揮者,然後指揮者開始指揮,最後得到產品。

hotel

=

Director

HotelBuilder

direct

()

標簽: 指揮者  建造  print  self  幹活