架構模式

    所謂軟件架構就是關於如何構建軟件的一些最重要的設計決策,這些決策往往圍繞着將系統分爲哪些部分、各部分之間如何交互展開的。

    軟件架構模式就是高度抽象的、適用於許多類似系統的、預先定義好的一種特殊的軟件架構。架構模式描述了軟件系統基本的結構化組織方案,具體而言,架構模式提供了一套預定義的子系統,並規定了子系統的職責,以及子系統或自薦關係的組織原則和組織指南。

目前有很多比較成熟的架構模式,我們需要根據項目的具體需求去確定應該採取哪種架構模式。

分層:很流行,最大的優點是將整體問題局部化,把可能的變化分別封裝在不同的層中,最後,系統被規劃爲一個單向依賴的分層體系,利於修改、擴展和替換。具體而言,各層之間的單向依賴關係可以分爲兩種:嚴格的分層架構要求第n層只能被第n+1層調用,於此相對的是不嚴格的分層架構,第n層可以被位於其上層的任意一層調用。我們需要注意分層的原則:職責劃分和交互機制。

MVC:鋪天蓋地的一種模式。隨着smalltalk發展而來,有很多變種。包含三種組件:Model、View、Controller。

微內核:最大的優點是適應變化。微內核架構不僅將應用相關部分與通用部分分離,而且又將通用部分進一步分離成一個最小化的基本服務內核和衆多擴展服務。微內核不僅提供了一個基本服務的最小集合,這些基本服務屏蔽了其下層複雜環境的影響、並以規範的接口提供給上層的‘增值服務’使用,於是所有這些附加的增值服務都和複雜環境無關。微內核所提供的基本服務必須是完備的,從而實現了一個虛擬機。這個虛擬機不僅屏蔽了下層的複雜性,而且建立了更抽象、更易用的一個‘新機器’供其上層使用。

微內核的缺點:1.設計和實現的複雜性;2. 往往比同類情況下其他架構的性能低。

採取微內核架構的原因:1. 可擴展性;2. 可移植性;3. 延長軟件系統的生命週期。

元模型架構:一個以適應變化、支持長生命週期爲主要目標的架構模式。包括兩個層:基本層和元層次。基本層定義應用,類似於我們要編寫的程序;元層次包含一組‘元對象’,這些元對象組成的模型叫做‘元模型’,元模型是對基本層中的‘一切’的抽象,提供了軟件本身的結構和行爲的‘自描述’。
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章