設(shè)計模式大家一定很熟悉,它是一套被反復(fù)使用、多數(shù)人知曉的、經(jīng)過分類編目的、代碼設(shè)計經(jīng)驗的總結(jié)。使用設(shè)計模式可以使代碼更容易被他人理解,并保證代碼的可靠性,而設(shè)計模式的使用也需要遵循一定的原則,那么什么是Python設(shè)計模式呢?讓我們來看看。
Python設(shè)計模式主要分為三類:創(chuàng)建模式、結(jié)構(gòu)模式和行為模式;這三類進(jìn)一步細(xì)分為23種設(shè)計模式,以下是比較常見的幾種。
單例模式:這是一種常用的軟件設(shè)計模式,這種模式的主要目的是確保某個類只存在一個實例。當(dāng)你想在整個系統(tǒng)中只有某個類的一個實例時,單例對象可以派上用場。單例對象主要有三點:一是某個類只能有一個實例;二是它必須自己創(chuàng)建整個實例,三是它必須自己將這個實例提供給整個系統(tǒng)。
工廠模型:提供創(chuàng)建對象的接口,不像客戶端暴露創(chuàng)建對象的過程,使用通用接口創(chuàng)建對象可以分為簡單工廠、工廠方法和抽象工廠三種。類的行為或其算法可以在運行時更改,這種類型的設(shè)計模式是一種行為模式。
策略模式:它是指定義一系列算法,并將每個算法封裝起來,使它們可以互換。策略模型允許算法獨立于使用它的客戶而改變,換句話說,就是為一個問題定義一個解決方案模板,這個模板是一個特定的策略。每個策略都是根據(jù)這個模板執(zhí)行的。在這種情況下,當(dāng)我們有新的策略時,我們可以直接跟進(jìn),在不影響先前定義的策略的情況下寫入模板。
門面模式:門面模式也稱為外觀模式,它的定義是要求一個子系統(tǒng)的外部與其內(nèi)部之間的通信必須通過一個統(tǒng)一的對象來進(jìn)行。門面模式提供高級接口,使子系統(tǒng)更易于使用。門面模式側(cè)重于一個統(tǒng)一的對象,即提供訪問子系統(tǒng)的接口。門面模式與模板模式有相似之處,兩者都封裝了一些需要重復(fù)的方法,但本質(zhì)是不同的。模板模式是類本身的方法的封裝,封裝的方法也可以單獨使用;門面模式是對子系統(tǒng)的封裝,封裝的接口理論上不是孤立使用的。
如果你對Python感興趣,就來千鋒教育吧!Python培訓(xùn)采用線上線下相結(jié)合的方式,科學(xué)的教學(xué)方式,無論學(xué)生選擇哪種教學(xué)方式,都能學(xué)到真正的知識!