設計模式 概述

2021-10-11 22:50:37 字數 2009 閱讀 9352

設計模式是軟體設計中常見問題的典型解決方案。 它們就像能根據需求進行調整的預製藍圖, 可用於解決**中反覆出現的設計問題。設計模式與方法或庫的使用方式不同, 很難直接在自己的程式中套用某個設計模式。 模式並不是一段特定的**, 而是解決特定問題的一般性概念。 可以根據模式來實現符合自己程式實際所需的解決方案。

人們常常會混淆模式和演算法, 因為兩者在概念上都是已知特定問題的典型解決方案。 但演算法總是明確定義達成特定目標所需的一系列步驟, 而模式則是對解決方案的更高層次描述。 同一模式在兩個不同程式中的實現**可能會不一樣。演算法更像是菜譜: 提供達成目標的明確步驟。 而模式更像是藍圖: 可以看到最終的結果和模式的功能, 但需要自己確定實現步驟。

誰發明了設計模式?這是乙個很好的問題, 但也有點不太準確。 設計模式並不是晦澀的、 複雜的概念——事實恰恰相反。 模式是物件導向設計中常見問題的典型解決方案。 同樣的解決方案在各種專案中得到了反覆使用, 所以最終有人給它們起了名字, 並對其進行了詳細描述。 這基本上就是模式被發現的歷程了。模式的概念是由克里斯托佛·亞歷山卓在其著作 《建築模式語言》 中首次提出的。 本書介紹了城市設計的 「語言」, 而此類 「語言」 的基本單元就是模式。 模式中可能會包含對窗戶應該在多高、 一座建築應該有多少層以及一片街區應該有多大面積的植被等資訊的描述。

埃里希·伽瑪、 約翰·弗利賽德斯、 拉爾夫·詹森和理查德·赫爾姆這四位作者接受了模式的概念。 1994 年, 他們出版了 《設計模式: 可復用物件導向軟體的基礎》 一書, 將設計模式的概念應用到程式開發領域中。 該書提供了 23 個模式來解決物件導向程式設計中的各種問題, 很快便成為了暢銷書。 由於書名太長, 人們將其簡稱為 「四人組(gang of four, gof)的書」, 並且很快進一步簡化為 「gof 的書」。此後, 人們又發現了幾十種物件導向的模式。 ​ 「模式方法」 開始在其他程式開發領域中流行起來。 如今, 在物件導向設計領域之外, 人們也提出了許多其他的模式。

序號名稱

位址01

單一職責原則

⚔ 詳情

02介面隔離原則

⚔ 詳情

03依賴倒置原則

⚔ 詳情

04黎克特制替換原則

⚔ 詳情

05開閉原則

⚔ 詳情

06迪公尺特法則

⚔ 詳情

07合成復用原則

⚔ 詳情

序號名稱

位址01

建立型 - 單例模式

⚔ 詳情

02建立型 - 工廠方法模式

⚔ 詳情

03建立型 - 抽象工廠模式

⚔ 詳情

04建立型 - 原型模式

⚔ 詳情

05建立型 - 建造者模式

⚔ 詳情

06結構型 - 介面卡模式

⚔ 詳情

07結構型 - 橋接模式

⚔ 詳情

08結構型 - 裝飾器模式

⚔ 詳情

09結構型 - 組合模式

⚔ 詳情

10結構型 - 外觀模式

⚔ 詳情

11結構型 - 享元模式

⚔ 詳情

12結構型 - **模式

⚔ 詳情

13行為型 - 模板方法模式

⚔ 詳情

14行為型 - 命令模式

⚔ 詳情

15行為型 - 訪問者模式

⚔ 詳情

16行為型 - 迭代器模式

⚔ 詳情

17行為型 - 觀察者模式

⚔ 詳情

18行為型 - 中介者模式

⚔ 詳情

19行為型 - 備忘錄模式

⚔ 詳情

20行為型 - 直譯器模式

⚔ 詳情

21行為型 - 狀態模式

⚔ 詳情

22行為型 - 策略模式

⚔ 詳情

23行為型 - 責任鏈模式

⚔ 詳情

參考資料

設計模式概述

什麼是設計模式?通常會有以下幾個定義 設計模式描述了軟體設計過程中某一類常見問題的一般性解決方案。物件導向設計模式描述了物件導向設計過程中,特定場景下,類與相互通訊的物件之間常見的組織關係。每乙個模式描述了乙個在我們周圍不斷重 生的問題,以及該問題的解決方案的核心。這樣,你就能一次又一次的使用該方案...

設計模式 概述

第一章 簡單工廠模式 1.物件導向的好處 通過封裝 繼承 多型把程式的耦合度降低。用設計模式使得程式更加的靈活,容易修改,並且易於復用。簡單工廠模式 到底要例項化誰,將來會不會增加例項化的物件,比如增加開根運算,這是很容易變化的地方,應該考慮用乙個單獨的類來做這個創造例項的過程,這就是工廠。類圖 類...

設計模式概述

面試的時候,考察設計模式,就像是 天王蓋地虎,寶塔鎮河妖 一樣的黑話。在道上混,雖然不知道會碰到什麼鬼神,知道內涵意義的同時,也需要知道這些形式上的東西到底是怎麼一一表述的。不然,咋死的都不知道 設計模式的實現 設計模式的目的 對一些常用的設計模式套用上面的描述結構 實現 目的 實現 目的 實現 目...