首先,咱們須要先明確一個概念,什麼叫軟件體系結構的風格?定義即是:描述某一特定應用領域中系統組織方式的慣用。即,定義了用於描述系統的術語表和一組指導構建系統的規則。這方便了軟件大粒度的重用。所以,當人們使用經常使用的,規範的方式來組織時,便可使別的設計師很容易理解系統的體系結構。下面是一些經常使用的軟件體系結構風格數據庫
(一)經典軟件體系結構風格瀏覽器
1.數據流風格:批處理序列,管道與過濾器服務器
2.調用/返回風格:主程序與子程序,面向對象風格,層次結構分佈式
3.獨立構件風格:進程通訊,事件系統設計
4.虛擬機風格:解釋器,基於規則的系統代理
5.倉庫風格:數據庫系統,超文本系統,黑板系統對象
(二)客戶/服務器風格blog
經過一臺物理上與宿主機相鏈接的非智能終端來實現宿主機上的應用程序。C/S軟件體系結構是基於資源不對等,且爲實現共享而提出的進程
(三)三層C/S結構風格事件
表示層負責處理用戶的輸入和向用戶輸出;
功能層負責創建數據庫的鏈接,根據用戶的請求生成訪問數據庫的SQL語句,並把結構返回給客戶端
數據層負責實際的數據庫存儲和檢索,相應功能層的數據處理請求,並將結構返回給功能層
(四)瀏覽/服務器風格
是上述三層C/S應用結構的一種實現方式,其具體結構爲:瀏覽器/Web服務器/數據庫服務器
(五)公共對象請求代理體系結構
使對象能夠透明地發出請求和得到應答,從而創建起一個異質的分佈式應用環境
(六)正交軟件體系結構
由組織曾和線索的構件構成。層是由一組具備相同抽象級別的構件構成。線索是子系統的特例,由完成不一樣層次功能的構件組成。每一條線索完成整個系統中相對獨立的一部分功能。每條線索的實現與其餘線索的實現無關或關聯不多,在同一層中不存在相互調用