單例模式
是最簡(jiǎn)單、最常用的設(shè)計(jì)模式,主要目的是保證某個(gè)實(shí)例對(duì)象只會(huì)存在一個(gè),從而達(dá)到減少資源消耗的目的,Python單例模式有很多實(shí)現(xiàn)方式:
1.重寫_new_方法
定義一個(gè)實(shí)例變量,在_new_方法中保證這個(gè)變量?jī)H初始化一次;
2.閉包定義裝飾器
使用閉包的方式定義一個(gè)單例裝飾器,將類的定義隱藏到閉包函數(shù)中,使用裝飾器的類,構(gòu)建的實(shí)例就能夠保證單例的存在。
工廠模式
簡(jiǎn)單工廠:是最常見的工廠模式,適用于簡(jiǎn)單的業(yè)務(wù)場(chǎng)景;
工廠方法:將創(chuàng)建對(duì)象的工作讓相應(yīng)的工廠子類去實(shí)現(xiàn),保證在新增工廠類時(shí),不用修改原有代碼;
抽象工廠:如果一個(gè)工廠需要生產(chǎn)多個(gè)產(chǎn)品,如果使用上面這種方法,就需要編寫很多工廠類,實(shí)用性不高,使用抽象工廠就可以很好地解決這個(gè)問題。
簡(jiǎn)而言之,單例模式和工廠模式是日常使用中最為頻繁的兩種設(shè)計(jì)模式,編寫的復(fù)雜度也并不高。
以上內(nèi)容為大家介紹了Python面試中常被問到的幾種設(shè)計(jì)模式,希望對(duì)大家有所幫助,如果想要了解更多Python相關(guān)知識(shí),請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。http://m.2667701.com/