1. <nobr id="easjo"><address id="easjo"></address></nobr>

      <track id="easjo"><source id="easjo"></source></track>
      1. 
        

      2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
      3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>
          貴州做網站公司
          貴州做網站公司~專業!靠譜!
          10年網站模板開發經驗,熟悉國內外開源網站程序,包括DEDECMS,WordPress,ZBlog,Discuz! 等網站程序,可為您提供網站建設,網站克隆,仿站,網頁設計,網站制作,網站推廣優化等服務。我們專注高端營銷型網站,企業官網,集團官網,自適應網站,手機網站,網絡營銷,網站優化,網站服務器環境搭建以及托管運維等。為客戶提供一站式網站解決方案?。?!

          軟件架構(常見的軟件架構有哪些)

          來源:互聯網轉載 時間:2024-05-11 05:14:00

          常見的軟件架構模式:分層架構模式、客戶端-服務器模式、主從模式、管道-過濾器模式、代理模式、點對點模式、事件總線模式、模型-視圖-控制器(MVC)模式、黑板模式、解釋器模式等。

          10種常見軟件架構模式

          是否想知道大型企業級系統是怎么設計的?在軟件主體開發之前,我們必須選擇一個合適的架構來提供所需的功能和質量特征。所以在應用于設計之前,我們應該了解不同的架構。


          什么是架構模式

          維基百科:架構模式是在給定上下文的軟件架構中,針對常發生問題的一種通用、復用的解決方案。架構模式類似于軟件設計模式,但是范疇更廣。

          本文中,我將簡要的闡述如下10中常見架構模式的應用和優缺點。

          1. 分層模式
          2. 客戶端-服務端模式
          3. 主從模式
          4. 管道-過濾器模式
          5. 代理模式
          6. 點對點模式
          7. 事件總線模式
          8. 模型-視圖-控制器模式
          9. 黑板模式
          10. 解釋器模式

          1. 分層模式

          該模式用于構建可分解為多組子任務的程序,每個子任務都在某個抽象層,每個層對上一個更高層提供服務。一般信息系統中最常見的4層體系如下。

          • 表示層(也叫 UI 層)

          • 應用層(也叫服務層)

          • 業務邏輯層(也叫領域層)

          • 數據訪問層(也叫持久層)

          應用場景
          • 一般桌面程序

          • 電子商務網頁程序


          2. 客戶端-服務器模式

          該模式由兩部分構成:單個服務器端和多個客戶端。服務器組件對多個客戶端組件提供服務??蛻舳讼蚍掌鞫苏埱蠓?服務端提供對應服務給這些客戶端。此外,服務器端繼續監聽客戶端請求。

          應用場景

          • 在線應用,比如電子郵件、文檔分享和銀行業務


          3. 主從模式

          該模式由兩部分構成:主節點和多個從節點。主節點組件向多個獨立的從節點組件分派任務,并根據從節點返回結果計算出最終結果。

          應用場景

          • 數據庫復制,主數據庫被視為權威來源并同步到從數據庫

          • 連接到計算系統的外圍設備(主從驅動)


          4. 管道-過濾器模式

          該模式用于構建生產和處理數據流的系統。每個處理步驟封裝在一個過濾器組件中。待處理的數據被傳送到管道之中,這些管道可用于緩沖或者同步。

          應用場景

          • 編譯器,接連的過濾器執行詞義分析,語法分析,語義分析和代碼生成

          • 生物資料學科的工作流


          5. 代理模式

          該模式用于構建組件解耦的分布式系統。這些組件通過遠程調用彼此交互。代理組件負責多個組件的通信協調,服務器向代理公開他們的能力(服務和特性);客戶端從代理中獲取服務,然后代理重定向客戶端到注冊服務庫中一個合適的服務。

          應用場景

          • 消息隊列軟件,比如 Apache ActiveMQ、Apache Kafka、RabbitMQ 和 JBoss Messaging


          6. 點對點模式

          該模式中,各獨立組件都叫對等點。對等點既可以作為客戶端從其他對等點獲取服務,也可作為服務端向其他對等點提供服務。對等點可作為客戶端、或者服務端、或者兩者,并且在不時間動態切換角色。

          應用場景

          • 文件分享網絡,比如 Gnutella 和 G2

          • 多媒體協議,比如 P2PTV 和 PDTP

          • 私媒體程序,比如 Spotify


          7. 事件總線模式

          該模式主要處理事件,有4個主要組件:事件源,事件監聽器,頻道和事件總線。事件源發布消息到事件總線上的某個頻道,監聽器訂閱某個頻道,并得知在已訂閱頻道中發布的消息。

          應用場景

          • Android 開發

          • 通知服務


          8. 模型-視圖-控制器模式

          該模式也叫 MVC 模式,劃分交互程序為3個部分:模型——包含核心功能和數據,視圖——顯示信息給用戶(多個視圖可被定義),控制器——處理用戶輸入。它通過分割用戶信息的內部陳述和呈現、接受方式來實現,解耦組件并允許高效的代碼復用。

          應用場景

          • 主流編程語言的萬維網程序架構

          • 網頁框架,比如 Django 和 Rails


          9. 黑板模式

          該模式對沒有確定性方案策略的問題很有用。黑板模式由三個主要組件組成,黑板——包含解空間對象的結構化全局內存,知識源——有自擁表示的專門模塊,控制組件——選擇、配置和執行模塊。所有組件都可訪問黑板,可生成新的數據對象并添加到黑板中。在黑板中,可根據已有知識源的匹配規則,尋找某些類型的數據。

          應用場景

          • 語音識別

          • 車輛識別和跟蹤

          • 蛋白質結構鑒定

          • 聲吶信號解釋


          10. 解釋器模式

          該模式用于設計解釋特定語言編寫的程序的組件。該組件主要指定怎么去評估程序代碼行,也就是所謂的用某種語言寫的語句或者表達式,基本點在于給語言符號分類。

          應用場景

          • 數據庫查詢語言,比如 SQL

          • 用于描述通信協議的語言


          架構模式比較

          下面的表格概述每個架構模式的優缺點。


          標簽:軟件架構-

          c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...

          2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...

          :喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...

          鐘南山:99%的感染者可以在7到10天內完全康復。蔡敏貞攝眾信。中新網廣州12月9日電(記者蔡敏杰)中國工程院院士鐘南山9日在線表示,奧米克隆菌株(BA.4/5,BF7)感染并不可怕,99%的感染者在7至10天內可以完全康復。預防感染還是要落實的,但是過度的“預防”會對經濟或社會造成更大的二次傷害,接下來的防控要以重疾防控為主。當日,鐘南山在中華醫學會第23屆全國呼吸病學學術會議——2022上做了...

          (資料圖)在生活中,很多人都不知道大江大河大結局是什么意思,其實他的意思是非常簡單的,下面就是小編搜索到的大江大河大結局相關的一些知識,我們一起來學習下吧!1、《大江大河》最后的結局中,宋運輝在心灰意冷之下主動申請調往東海,雷東寶成功收購市電線廠為宋運萍報仇,和韋春紅的感情也有了進一步發展,楊巡掛靠在雷東寶的企業下,收購了電器市場,他和尋建祥也在宋運輝的介紹下達成了合作。2、《大江大河》是由上海廣...

          (資料圖)提起網上怎么開店大家在熟悉不過了,被越來越多的人所熟知,那你知道網上怎么開店嗎?快和小編一起去了解一下吧!1、打開淘寶網點擊左上角的兔費注冊,注冊一個淘寶賬號,需要注意的是淘寶賬號的名字,一旦注冊就不可以更改,輸入手機號,輸入驗證碼即可完成注冊。2、注冊成功后,在淘寶的左上角就會顯示會員名,說明就已經登錄成功了,然后點擊右上角的賣家中心下面的免費開店,完善支付寶資料,按要求填寫所有資料,...

          TOP
          国产初高中生视频在线观看|亚洲一区中文|久久亚洲欧美国产精品|黄色网站入口免费进人
          1. <nobr id="easjo"><address id="easjo"></address></nobr>

              <track id="easjo"><source id="easjo"></source></track>
              1. 
                

              2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
              3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>