創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!
成都創(chuàng)新互聯(lián)公司專注于鹽湖網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供鹽湖營(yíng)銷型網(wǎng)站建設(shè),鹽湖網(wǎng)站制作、鹽湖網(wǎng)頁設(shè)計(jì)、鹽湖網(wǎng)站官網(wǎng)定制、微信平臺(tái)小程序開發(fā)服務(wù),打造鹽湖網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供鹽湖網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。這篇文章主要介紹Python3實(shí)現(xiàn)建造者模式的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
建造者模式
建造者模式用于創(chuàng)建復(fù)雜的對(duì)象。使用建造者模式可以使復(fù)雜的過程層次明了、清晰,把對(duì)象的創(chuàng)建以及使用進(jìn)行了解耦。實(shí)際上從代碼的角度上看,是進(jìn)行了多次封裝,使代碼結(jié)構(gòu)更為規(guī)范合理,層次結(jié)構(gòu)更加鮮明。
在一個(gè)復(fù)雜的對(duì)象中,需要編寫大量的代碼去實(shí)現(xiàn)這一個(gè)類,并且在進(jìn)行初始化時(shí),也有可能會(huì)有大量的參數(shù)去進(jìn)行初始化。
建造者模式把實(shí)現(xiàn)一個(gè)類給拆分成多個(gè)創(chuàng)建步驟,這些步驟在大多數(shù)相關(guān)資料中,一般以擬人化的形式進(jìn)行表達(dá);例如建造者、指揮者以及導(dǎo)演者,但是這些名詞的擬人化并不能完全的讓讀者能夠get到完整的含義。以下將詳細(xì)講解這幾個(gè)角色所需要做的事務(wù)。
此篇是一個(gè)水文,就用建房子來作為一個(gè)簡(jiǎn)單示例講解。
首先我們創(chuàng)建一個(gè)房子的基類來模擬房子:
class House:#房子基類 def __init__(self): self.size=0 self.floor=0 self.garage=0 self.courtyard=0 def __str__(self): houseInfo='我的房子有'+str(self.size)+'平米,'+str(self.floor)+'層樓,'+str(self.garage)+'個(gè)車庫'+str(self.courtyard)+'個(gè)院子' return houseInfo