Python設計模式概論

2022-06-22 10:51:15 字數 854 閱讀 5155

設計模式是前輩們對開發經驗的總結,是解決特定問題的一系列套路,它不是語法規定,而是一套用來提高**可復用性、可維護性、可讀性、穩健性以及安全性的解決方案。

三類:1)建立型模式:

單例、工廠、抽象工廠、建造者、原型

2)結構型型模式:

介面卡、橋接、裝飾器、組合、外觀、享元、**

3)行為型模式:

模板方法、命令、迭代器、觀察者、中介、備忘錄、直譯器、狀態、策略、職責鏈、訪問者

設計模式的本質是物件導向設計原則的實際運用,是對類的繼承封裝性、繼承性、和多型性以及類的關聯關係和組合關係的充分理解。

編寫軟體過程中,程式設計師面臨著來自耦合性,內聚性,以及可維護性,可擴充套件性,重要性,靈活性等多方面挑戰,設計模式是為了讓程式具有更好的:

1)**重用性(即:相同的功能**。不用多次編寫)

2)可讀性(即:程式設計規範性,便於其他程式設計師閱讀與理解)

3)可擴充套件性(即: 當需要新增功能時,非常方便,稱為可維護性)

4)可靠性(即:當我們新增功能後,對原來的功能沒有影響)

5)使程式呈現高內聚,低耦合的特性。

1)單一職責:

控制類的粒度大小,將物件解耦,提高內聚性

2)介面隔離:

要為各個類建立它們需要的專用介面

3)依賴倒**

面向介面程式設計,不要面向實現程式設計

4)黎克特制替換原則:

繼承必須確保超類所擁有的性值在子類中仍然成立

5)開閉原則:

對外擴充套件開放,對修改關閉

6)迪公尺特法則:

只與你的直接朋友交談,不跟 "陌生人" 說話

7)合成復用:

盡量先使用組合或者聚合等關聯關係來實現,其次才考慮使用繼承關係來實現

設計模式概論

1.觀察者模式 讓你的物件知悉現狀 是jdk用的最多的模式之一。它可以幫助你的物件知悉現況,不會錯過該物件感興趣的事。物件甚至在執行時可以決定是否要繼續被通知。有了觀察者,你會訊息靈通。2.裝飾者模式 裝飾物件 如何使用物件組合的方式,做到在執行時裝飾類。3.工廠模式 烘烤oo的精華 例項化這個活動...

設計模式 概論

此篇文章為 設計模式 劉偉 的第一章讀書筆記 設計模式是從建築業的模式 pattern 引申而來。建築業的模式 pattern 其定義是在特定環境下人們解決某類重複出現的問題的一套成功或者有效的解決方案。gof將模式 pattern 的概念引入是軟體工程界,並將設計模式定義為 是在特定環境下為解決某...

設計模式系列 概論

對於程式設計師來說,設計模式並不新鮮。網上 書店可以找到各種設計模式的資料。很多的公司招聘技術人員都把它作為乙個衡量標準。自己最近閱讀了n本設計模式相關的書籍 也查詢了一些網上的資料,在與同事的交流中,體會較深。打算寫一系列的部落格來分享自己的技術體會和心得。本系列部落格的重心 學習設計模式的目的,...