歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> 《軟件設計模式與體系結構》學習筆記:軟件設計模式概論

《軟件設計模式與體系結構》學習筆記:軟件設計模式概論

日期:2017/3/1 9:07:57   编辑:Linux編程

軟件設計模式的概念


軟件設計模式是對軟件設計經驗的總結,是對軟件設計中反復出現的設計問題的已被驗證的成功解決之道。大量的軟件設計模式都是之前從事軟件設計開發的前人經過大量的實踐而摸索出來的,用於幫助後來者快速高效且高質從事軟件開發的。

高等學校軟件工程系列教材:軟件設計模式與體系結構PDF 下載見 http://www.linuxidc.com/Linux/2016-12/138397.htm

軟件設計模式的要素


軟件設計模式一般會包含四個基本要素:

  • 模式名稱:此種設計模式的名字;
  • 問題:是設計者所面臨的設計場景,也就是此種設計模式所適用的情況;
  • 解決方案:描述設計細節,通常會采取UML等圖示的方式來進行設計模式的詳細描述;
  • 效果:描述適用此設計模式的優勢與劣勢,包括面向軟件的質量屬性等。

軟件設計模式的分層


軟件設計模式根據問題的規模可以分為三個層次
架構模式 -> 設計模式 -> 習慣用法

  1. 架構模式:描述系統級的結構組成、相互關系及相關約束,如MVC模式;
  2. 設計模式:針對系統局部設計問題給出的解決方案,一般情況下,設計模式指的就是這一層次的;
  3. 習慣用法:與具體編程語言相關的一種底層模式。

軟件設計模式的分類


《軟件設計模式與體系結構》一書中將設計模式歸類如下:

面向對象分布式計算企業應用軟件面向服務的體系結構(SOA) 創建型模式 從混沌到結構 領域邏輯模式 服務設計模式 結構型模式 分布式基礎設施 數據源結構模式 服務庫設計模式 行為型模式 事件分離與分發 對象——關系行為模式 服務組合設計模式 接口劃分 對象——關系結構模式 組件劃分 對象——關系元數據映射模式 應用控制 Web表現模式 並發 分布模式 同步 離線並發模式 對象交互 會話狀態模式 適配與擴展 基本模式 模態行為 資源管理 數據庫訪問

感悟

在我們日常學習中,有些時候不知不覺的應用到某些設計模式,但我們很難意識到這可以抽象為一種思想方法,並且是可以被他人當為一種模式的設計方法。所以,在以後我們又碰到類似問題時,又會重新將以前的思路再來一次,等到腦中的設計思想快成型的時候,才會恍然大悟,一拍腦門道:“哦,這個東西我好像上一次做過。”

設計模式是前人經過驗證的成功的解決方案,我們應該要善於學習,學會運用,別辜負了前輩們的心血。站在巨人的肩膀上,我們會看得更遠。

Copyright © Linux教程網 All Rights Reserved