模式壹詞的指涉範圍甚廣,它標誌了物件之間隱藏的規律關系,而這些物件並不必然是圖像、圖案,也可以是數字、抽象的關系、甚至思維的方式。模式強調的是形式上的規律,而非實質上的規律。前人積累的經驗的抽象和升華。簡單地說,就是從不斷重復出現的事件中發現和抽象出的規律,似解決問題的經驗的總結。只要是壹再重復出現的事物,就可能存在某種模式。
是壹種認識論意義上的確定思維方式。是人們在生產生活實踐當中通過積累而得到的經驗的抽象和升華。簡單地說,就是從不斷重復出現的事件中發現和抽象出的規律,是解決問題形成經驗的高度歸納總結。只要是壹再重復出現的事物,就可能存在某種模式。
模式,即pattern。其實就是解決某壹類問題的方法論。即把解決某類問題的方法總結歸納到理論高度,那就是模式。
Alexander給出的經典定義是:每個模式都描述了壹個在我們的環境中不斷出現的問題,然後描述了該問題的解決方案的核心。通過這種方式,妳可以無數次地使用那些已有的解決方案,無需在重復相同的工作。
模式有不同的領域,建築領域有建築模式,軟件設計領域也有設計模式。當壹個領域逐漸成熟的時候,自然會出現很多模式。
模式是壹種參照性指導方略。在壹個良好的指導下,有助於高效完成任務,有助於按照既定思路快速作出壹個優良的設計方案,達到事半功倍的效果。而且會得到解決問題的最佳辦法。
框架
設計模式和框架
可復用面向對象 軟件系統壹般劃分為三大類:應用程序工具箱和框架(Framework),我們平時開發的具體軟件都是應用程序;Java的API屬於工具箱;而框架是構成壹類特定軟件可復用設計的壹組相互協作的類。EJB(EnterpriseJavaBeans)是Java應用於企業計算的框架.
框架通常定義了應用體系的整體結構類和對象的關系等等設計參數,以便於具體應用實現者能集中精力於應用本身的特定細節。框架主要記錄軟件應用中***同的設計決策,框架強調設計復用,因此框架設計中必然要使用設計模式.
另外,設計模式有助於對框架結構的理解,成熟的框架通常使用了多種設計模式,如果妳熟悉這些設計模式,毫無疑問,妳將迅速掌握框架的結構,我們壹般開發者如果突然接觸EJBJ2EE等框架,會覺得特別難學,難掌握,那麽轉而先掌握設計模式,無疑是給了妳剖析EJB或J2EE系統的壹把利器。