更新時間:2021-10-18 13:22:00 來源:動力節點 瀏覽1134次
在軟件工程中, 設計模式是軟件設計中常見問題的通用可重復解決方案。設計模式不是可以直接轉換為代碼的完成設計。它是關于如何解決可以在許多不同情況下使用的問題的描述或模板。
設計模式可以通過提供經過測試的、經過驗證的開發范例來加速開發過程。有效的軟件設計需要考慮在實施后期才會顯現的問題。重用設計模式有助于防止可能導致重大問題的細微問題,并提高熟悉這些模式的編碼人員和架構師的代碼可讀性。
通常,人們只了解如何將某些軟件設計技術應用于某些問題。這些技術難以應用于更廣泛的問題。設計模式提供通用解決方案,以不需要與特定問題相關的細節的格式記錄。
此外,模式允許開發人員使用眾所周知的、易于理解的名稱進行軟件交互。常見的設計模式可以隨著時間的推移而改進,使它們比臨時設計更健壯。
這些設計模式都是關于類實例化的。這種模式可以進一步分為類創建模式和對象創建模式。類創建模式在實例化過程中有效地使用繼承,而對象創建模式有效地使用委托來完成工作。
抽象工廠
創建幾個類家族的實例
Builder
將對象構造與其表示分離
工廠方法
創建多個派生類的實例
對象池
通過回收不再使用的對象來避免昂貴的資源獲取和釋放
原型
要復制或克隆的完全初始化的實例
Singleton
只能存在一個實例的類
這些設計模式都是關于類和對象組合的。結構類創建模式使用繼承來組合接口。結構對象模式定義了組合對象以獲得新功能的方法。
Adapter
匹配不同類的接口
Bridge
將對象的接口與其實現分開
復合
簡單和復合對象的樹結構
裝飾器
動態地為對象添加職責
Facade
代表整個子系統的單個類
Flyweight
用于高效共享的細粒度實例
私有類數據
限制訪問器/修改器訪問
代理
代表另一個對象的對象
這些設計模式都是關于 Class 的對象通信。行為模式是那些最特別關注對象之間通信的模式。
責任
鏈 一種在對象鏈之間傳遞請求的方式
Command 將
一個命令請求封裝為一個對象
解釋器
一種在程序中包含語言元素的方法
迭代器
順序訪問集合的元素
Mediator
定義了類之間的簡化通信
Memento
捕獲并恢復對象的內部狀態
Null Object
旨在充當對象的默認值
Observer
一種通知更改多個類的方法
狀態
當對象的狀態改變時改變對象的行為
策略
將算法封裝在一個類中
模板方法
將算法的確切步驟推遲到子類
訪問者
為類定義一個新的操作而不改變
如果您想了解更多相關知識,不妨來關注一下動力節點的Java在線學習,里面的內容豐富,從入門到精通,適合初學者學習,希望對大家能夠有所幫助。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習