軟體架構風格整理(3 獨立構件風格 4 虛擬機器風格)

來源:互聯網
上載者:User
1         獨立構件風格1.1      進程通訊

進程通訊架構風格。構件是獨立的過程,串連件是訊息傳遞。這種風格的特點是構件通常是命名過程,訊息傳遞的方式可以是點到點、非同步和同步方式及遠程序呼叫等。

1.2      事件系統

事件驅動架構風格。構件不直接調用一個過程,而是觸發或廣播一個或多個事件。系統中其他構件中的過程在一個或多個事件中註冊,當一個事件被觸發,系統自動調用在這個事件中註冊的所有過程。一個事件的觸發就導致了另一個模組中過程的調用。

這種風格中的構件是非命名的過程,它們之間互動的串連件往往是以過程之間的隱式調用(Implicit Invocation)來實現的。

主要優點:

1)       為軟體重用提供了強大的支援。當需要將一個構件加入現存系統中時,只要將它註冊到系統的事件中;(複用,擴充)

2)       為改進系統帶來了方便。當用一個構件代替另一個構件時,不會影響到其他構件的介面;

3)       易於系統升級

主要缺點:

1)       件放棄了對系統計算的控制。一個構件觸發一個事件時.不能確定其他構件是否會晌應它。而且即使它知道事件註冊了哪些構件的構成.它也不能保證這些過程被調用的順序。

2)       資料交換的問題,有時資料可被一個事件傳遞,但另一些情況下.基於事件的系統必須依靠一個共用的倉庫進行互動。在這些情況下.全域效能和資源管理便成了問題。

3)       既然過程的語義必須依賴於被觸發事件的上下文約束,關於正確性的推理存在問題

 

"

2         虛擬機器風格2.1      解譯器

一個解譯器通常包括完成解釋工作的解釋引擎,一個包含將被解釋的代碼的儲存區,一個記錄解釋引擎當前工作狀態的資料結構,以及一個記錄原始碼被解釋執行的進度的資料結構。

具有解譯器風格的軟體中含有一個虛擬機器,可以模擬硬體的執行過程和一些關鍵應用;解譯器通常被用來建立一種虛擬機器以禰合程式語義與硬體語義之間的差異

其缺點是執行效率較低

 

         典型的例子是專家系統

2.2      基於規則的系統

    基於規則的系統包括規則集、規則解譯器、規則/資料選取器及工作記憶體

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.