![理學(xué)C風(fēng)格四PPT課件_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/15/18b27650-ef09-4ffb-aef6-33e9e6ff166a/18b27650-ef09-4ffb-aef6-33e9e6ff166a1.gif)
![理學(xué)C風(fēng)格四PPT課件_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/15/18b27650-ef09-4ffb-aef6-33e9e6ff166a/18b27650-ef09-4ffb-aef6-33e9e6ff166a2.gif)
![理學(xué)C風(fēng)格四PPT課件_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/15/18b27650-ef09-4ffb-aef6-33e9e6ff166a/18b27650-ef09-4ffb-aef6-33e9e6ff166a3.gif)
![理學(xué)C風(fēng)格四PPT課件_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/15/18b27650-ef09-4ffb-aef6-33e9e6ff166a/18b27650-ef09-4ffb-aef6-33e9e6ff166a4.gif)
![理學(xué)C風(fēng)格四PPT課件_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/15/18b27650-ef09-4ffb-aef6-33e9e6ff166a/18b27650-ef09-4ffb-aef6-33e9e6ff166a5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、3.6 3.6 虛擬機(jī)風(fēng)格虛擬機(jī)風(fēng)格虛擬機(jī)風(fēng)格:虛擬機(jī)風(fēng)格:解釋器、基于規(guī)則的系統(tǒng)解釋器、基于規(guī)則的系統(tǒng)第1頁/共71頁虛擬機(jī)第2頁/共71頁從Java入手第3頁/共71頁Write Once, Run Anywhere一次書寫,多處運行第4頁/共71頁JAVA如何支持Platform IndependenceJava虛擬機(jī)第5頁/共71頁What is Virtual Machine? 虛擬機(jī)是一種軟件; 它創(chuàng)建了一種虛擬的環(huán)境; 將用戶與底層平臺隔離開來。第6頁/共71頁 JVM:執(zhí)行Java字節(jié)碼的虛擬機(jī) JVM可適應(yīng)所有的硬件與OS平臺,從而使得Java具有“一次書寫,到處運行”的能力
2、 在JVM上運行的程序必須首先被編譯為標(biāo)準(zhǔn)的二進(jìn)制格式的文件:.classJava Virtual Machine (JVM)第7頁/共71頁 注意:Java class文件并不是機(jī)器代碼或目標(biāo)代碼,而是一種具有標(biāo)準(zhǔn)中間格式的二進(jìn)制文件,無法直接在任何OS平臺上執(zhí)行; Java Class必須在JVM的支持下才能真正執(zhí)行; java class文件在JVM下運行,運行策略可能為: 解釋器 JIT編譯器Java Class在JVM上的執(zhí)行第8頁/共71頁JVM的執(zhí)行機(jī)制第9頁/共71頁 每個特定的OS需要實現(xiàn)自己的JVM 在執(zhí)行具體的class代碼之前,JVM需要針對特定的OS環(huán)境,進(jìn)行以下轉(zhuǎn)換
3、 Load and store Type conversion Object creation and manipulation Operand stack management (push / pop) Control transfer (branching) Method invocation and return Throwing exceptions 將JAVA CLASS代碼轉(zhuǎn)化為特定OS所能支持的程序運行模式JVM的功能與作用第10頁/共71頁總結(jié):基于JVM的Java程序開發(fā)與執(zhí)行過程第11頁/共71頁解釋器 Interpreter問題不管何種類別的虛擬機(jī),本質(zhì)上都是在高層次抽象
4、的用戶與低層次抽象的OS/硬件之間建立一道屏障。但是,如何把上層應(yīng)用的請求映射到下層OS/硬件系統(tǒng)的執(zhí)行?p解釋器(Interpreter)p基于規(guī)則的系統(tǒng)(Rule-based System)第12頁/共71頁 解釋器是一個用來執(zhí)行其他程序的程序。 解釋器針對不同的硬件平臺實現(xiàn)了一個虛擬機(jī)。 將高抽象層次的程序翻譯為低抽象層次所能理解的指令,以消除在程序語言與硬件之間存在的語義差異。解釋器 Interpreter第13頁/共71頁解釋器 解釋器通常用來在程序語言定義的計算和有效硬件操作確定的計算之間建立對應(yīng)和聯(lián)系。 簡單和小規(guī)模的解釋器只完成基本的信息識別和轉(zhuǎn)換 復(fù)雜的解釋器需要從詞法到句法
5、、到語法的復(fù)雜識別和處理第14頁/共71頁例如要在手機(jī)上進(jìn)行應(yīng)用開發(fā):n通常手機(jī)上都有一些小型的操作系統(tǒng)。要在手機(jī)上寫應(yīng)用程序。n如果直接在手機(jī)上寫,是非常痛苦的。如代碼的輸入、程序的調(diào)試、編譯、運行都非常困難。n但是手機(jī)上的應(yīng)用程序與PC機(jī)上的完全不同,它跑在不同的操作系統(tǒng)上面,使用的是不同的處理器,同時也涉及到不同的處理指令。n即使想在PC機(jī)上進(jìn)行應(yīng)用開發(fā),也會碰到一個問題。手機(jī)上的指令在PC機(jī)上找不到,手機(jī)上調(diào)用的指令在PC機(jī)上是不被支持的。n這時,就需要一個能在PC機(jī)上模擬手機(jī)程序的嵌入式系統(tǒng),使手機(jī)的特殊指令能在PC機(jī)運行。n也就是需要一個解釋器或是模擬器,它的功能是通過在PC機(jī)上模
6、擬手機(jī)上的指令,從而在PC機(jī)上能夠運行手機(jī)上的程序。這樣就可以在PC機(jī)上開發(fā)好后,再放到手機(jī)上運行。進(jìn)而使整個手機(jī)上的應(yīng)用程序開發(fā)變得容易。解釋器第15頁/共71頁解釋器 作為一種體系結(jié)構(gòu),解釋器已經(jīng)被廣泛應(yīng)用在從系統(tǒng)到應(yīng)用軟件的各個層面, 包括各類語言環(huán)境、Internet瀏覽器、數(shù)據(jù)分析與轉(zhuǎn)換等; LISP、Prolog、JavaScript、VBScript、HTML、產(chǎn)生式系統(tǒng)、數(shù)據(jù)庫系統(tǒng)(SQL解釋器)、各種通信協(xié)議等。第16頁/共71頁n基本構(gòu)件:(1個作為執(zhí)行引擎的狀態(tài)機(jī)和3個存儲器)p解釋器引擎p存儲區(qū)被解釋的源代碼解釋器引擎當(dāng)前的內(nèi)部控制狀態(tài)的表示:在某個時刻需要執(zhí)行哪些指令
7、程序當(dāng)前執(zhí)行狀態(tài)的表示n連接器:過程調(diào)用和直接存儲器訪問。解釋器組成第17頁/共71頁 解釋器在軟件中的應(yīng)用由來已久,早期的程序語言環(huán)境就分為編譯(Compilation)和解釋(Interpretation)兩大類。 二者在目標(biāo)、功能與實現(xiàn)上有何差別? 二者的性能有何差別?解釋器和編譯器Interpreter versus compiler第18頁/共71頁Compiler (編譯器) 編譯器不會執(zhí)行輸入的源程序代碼,而是將其翻譯為另一種語言,通常是可執(zhí)行的機(jī)器碼或目標(biāo)碼,并輸出到文件中以便隨后鏈接為可執(zhí)行文件并加以執(zhí)行Interpreter (解釋器)n在解釋器中,程序源代碼被解釋器直接加
8、以執(zhí)行。第19頁/共71頁解釋器和編譯器Interpreter versus compiler第20頁/共71頁 解釋器的執(zhí)行速度要慢于編譯器產(chǎn)生的目標(biāo)代碼的執(zhí)行速度,但是卻低于編譯器“編譯+鏈接+執(zhí)行”的總時間 解釋器通常省略了鏈接與編譯的步驟,從而降低編程時間 edit-interpret-debug (編輯源代碼-解釋-調(diào)試) edit-compile-link-run-debug (編輯源代碼-編譯-鏈接-運行-調(diào)試) 解釋器執(zhí)行速度之所以慢,是因為每次解釋執(zhí)行的時候,都需要分析程序的結(jié)構(gòu),而編譯代碼則直接執(zhí)行而無需重復(fù)編譯 解釋器對內(nèi)存的分配是在解釋時才進(jìn)行的;而編譯器則是在編譯時進(jìn)
9、行,因此運行時直接將程序代碼裝入內(nèi)存并執(zhí)行即可解釋器和編譯器Interpreter versus compiler第21頁/共71頁 傳統(tǒng)解釋器(traditionally interpreted) 純粹的解釋執(zhí)行 基于字節(jié)碼的解釋器(compiled to bytecode which is then interpreted) 編譯解釋執(zhí)行 實時編譯器Just-in-Time (JIT) 編譯|解釋執(zhí)行解釋器的三種策略第22頁/共71頁 解釋器直接讀取源代碼并加以執(zhí)行; ASP Excel JavaScript MATLAB etc傳統(tǒng)解釋器第23頁/共71頁JVM中的解釋器 Java的源程
10、序不是直接交給解釋器解釋,而是先經(jīng)過一個編譯過程,把Java源程序翻譯成一種特定的二進(jìn)制字節(jié)碼文件(Bytecode),再把這個字節(jié)碼文件交給Java解釋器來解釋執(zhí)行; javac 程序?qū)ava源代碼編譯為字節(jié)碼 Java編譯器所生成的可執(zhí)行代碼可以不基于任何具體的硬件平臺,而是基于JVM。 C/C+要的源程序要在不同的平臺上運行,必須重新進(jìn)行編譯字節(jié)碼解釋器Bytecode interpreter第24頁/共71頁JVM中的解釋器第25頁/共71頁 在該類解釋器下,源代碼首先被“編譯”為高度壓縮和優(yōu)化的字節(jié)碼,但并不是真正的機(jī)器目標(biāo)代碼,因而與硬件平臺無關(guān); 編譯后得到的字節(jié)碼然后被解釋器
11、加以解釋; 例如: Java Perl PHP Python etc字節(jié)碼解釋器Bytecode interpreter第26頁/共71頁 JIT模糊了解釋器、字節(jié)碼解釋器和編譯器之間的邊界與區(qū)分第27頁/共71頁 實時編譯JIT中,字節(jié)碼在運行時被編譯為本機(jī)的目標(biāo)代碼 第一步是編譯得到字節(jié)碼 字節(jié)碼被 配置到目標(biāo)系統(tǒng)中 當(dāng)字節(jié)碼被執(zhí)行時,運行環(huán)境下的編譯器將其翻譯為本地機(jī)器碼) JIT模糊了解釋器、字節(jié)碼解釋器和編譯器之間的邊界與區(qū)分實時編譯器JIT (Just-in-time) Complier第28頁/共71頁需編譯哪些部分? 只有當(dāng)某個函數(shù)要被執(zhí)行時,才被編譯,因此稱為JIT 而且,J
12、IT并不是編譯全部的代碼,而是只編譯那些被頻繁執(zhí)行的代碼段) 被執(zhí)行多次的方法; 包含多次循環(huán)的方法.實時編譯器JIT (Just-in-time) Complier第29頁/共71頁 適用的應(yīng)用程序: 應(yīng)用程序并不能直接運行在最適合的機(jī)器上,或不能直接以最適合的語言執(zhí)行 優(yōu)點: 有助于應(yīng)用程序的可移植性和程序設(shè)計語言的跨平臺能力 可以對未實現(xiàn)的硬件進(jìn)行仿真,在測試上提供一個安全的和低成本的解決方案,提供了更多的靈活性。 缺點: 額外的間接層次(運行都是模擬的),帶來了系統(tǒng)性能的下降(執(zhí)行的速度)解釋的程序比編譯的程序慢很多比硬件實現(xiàn)慢更多 在解釋器風(fēng)格下進(jìn)行測試,需要額外的構(gòu)建軟件解釋器第3
13、0頁/共71頁基于規(guī)則的系統(tǒng)Rule-based System第31頁/共71頁基于規(guī)則的系統(tǒng)Rule-based System幾個例子第32頁/共71頁if-else分支結(jié)構(gòu)第33頁/共71頁當(dāng)if-else結(jié)構(gòu)越來越多時第34頁/共71頁業(yè)務(wù)邏輯與程序代碼之間的“語義鴻溝”第35頁/共71頁業(yè)務(wù)邏輯的頻繁變化第36頁/共71頁如何解決上述問題?第37頁/共71頁基于規(guī)則的系統(tǒng)第38頁/共71頁基于規(guī)則的系統(tǒng)第39頁/共71頁基于規(guī)則的系統(tǒng)第40頁/共71頁基于規(guī)則的系統(tǒng)第41頁/共71頁基于規(guī)則的系統(tǒng)第42頁/共71頁基于規(guī)則的系統(tǒng)第43頁/共71頁基于規(guī)則的系統(tǒng)第44頁/共71頁基于規(guī)則
14、的系統(tǒng)第45頁/共71頁基于規(guī)則的系統(tǒng)第46頁/共71頁基于規(guī)則的系統(tǒng)第47頁/共71頁基于規(guī)則的系統(tǒng)規(guī)則的分類第48頁/共71頁基于規(guī)則的系統(tǒng)應(yīng)用:基于規(guī)則的專家系統(tǒng) (Rule-based Expert System)第49頁/共71頁基于規(guī)則的系統(tǒng)應(yīng)用:一般專家系統(tǒng)結(jié)構(gòu)下圖:第50頁/共71頁基于規(guī)則的系統(tǒng)應(yīng)用:業(yè)務(wù)規(guī)則引擎(Business Rule Engine)第51頁/共71頁3.7 3.7 反饋控制環(huán)風(fēng)格反饋控制環(huán)風(fēng)格第52頁/共71頁3.7 反饋控制環(huán)風(fēng)格 源自于控制理論中的模型框架,將事務(wù)處理看做輸入、加工、輸出、反饋、再輸人的一個持續(xù)的過程模型。 反饋控制系統(tǒng):通過度量受
15、控制變量來調(diào)控其他過程變量的閉環(huán)系統(tǒng)。 反饋控制環(huán)風(fēng)格能處理復(fù)雜的自適應(yīng)問題,尤其廣泛應(yīng)用于產(chǎn)品線的自動機(jī)械控制軟件領(lǐng)域中。 如生產(chǎn)管理系統(tǒng)、工控系統(tǒng)、供電、水利甚至可以推廣到商務(wù)軟件中體現(xiàn)的管理模型中。第53頁/共71頁54542021-11-153.7 反饋控制環(huán)風(fēng)格機(jī)器學(xué)習(xí)的基本模型機(jī)器學(xué)習(xí)的基本模型第一步,訓(xùn)練樣本被輸入到學(xué)習(xí)內(nèi)容中,這一部分包含基本的將被查第一步,訓(xùn)練樣本被輸入到學(xué)習(xí)內(nèi)容中,這一部分包含基本的將被查詢的基本數(shù)據(jù)。詢的基本數(shù)據(jù)。第二步,真正的數(shù)據(jù)被輸入并得到結(jié)果。第二步,真正的數(shù)據(jù)被輸入并得到結(jié)果。第54頁/共71頁55552021-11-153.7 反饋控制環(huán)風(fēng)格在學(xué)
16、習(xí)構(gòu)件的分析和計算之后,學(xué)習(xí)結(jié)果被輸出。但同時,學(xué)習(xí)內(nèi)容在學(xué)習(xí)構(gòu)件的分析和計算之后,學(xué)習(xí)結(jié)果被輸出。但同時,學(xué)習(xí)內(nèi)容將會檢查結(jié)果的有效性,然后學(xué)習(xí)結(jié)果會回饋到學(xué)習(xí)構(gòu)件當(dāng)中。通過將會檢查結(jié)果的有效性,然后學(xué)習(xí)結(jié)果會回饋到學(xué)習(xí)構(gòu)件當(dāng)中。通過這一反饋,學(xué)習(xí)構(gòu)件的學(xué)習(xí)能力得到提高,知識得到增長。這一反饋,學(xué)習(xí)構(gòu)件的學(xué)習(xí)能力得到提高,知識得到增長。第55頁/共71頁3.8 七種經(jīng)典軟件體系風(fēng)格比較不同的結(jié)構(gòu)風(fēng)格分別具有各自的特點、優(yōu)劣和用途。以下從特點、優(yōu)勢、缺陷和應(yīng)用4個方面對7種體系結(jié)構(gòu)風(fēng)格進(jìn)行分析比較。1. 管道過濾器風(fēng)格u每個功能性構(gòu)件都有一組輸入和輸出。每個過濾器都是獨立的,不需要與其他過濾器
17、建立聯(lián)系。每個過濾器從它的輸入接口讀取數(shù)據(jù),對這些數(shù)據(jù)進(jìn)行處理,然后通過輸出接口輸出。u這種體系結(jié)構(gòu)風(fēng)格便于支持重復(fù)使用,易于維護(hù)和評估,支持有針對性的分析和并發(fā)。u但同時,這種結(jié)構(gòu)必須在兩個獨立的過濾器問處理聯(lián)系數(shù)據(jù),缺乏交互性。u這種結(jié)構(gòu)常用于通信領(lǐng)域和編譯器。第56頁/共71頁57572021-11-153.8 七種經(jīng)典軟件體系風(fēng)格比較2. 面向?qū)ο箫L(fēng)格u在這種風(fēng)格中,數(shù)據(jù)表示和相關(guān)操作被封裝;類的對象負(fù)責(zé)它們的整合。對于某個對象來說,其他的對象是透明的,僅僅暴露出接口。u這種風(fēng)格的優(yōu)點是高模塊化、代碼封裝、代碼共享、易維護(hù)以及良好的擴(kuò)展性。u缺點是調(diào)用者必須知道被調(diào)對象的引用。當(dāng)對象引
18、用改變時,必須通知所有可能調(diào)用其方法的對象。這一特點使系統(tǒng)具有比較高的耦合。u此風(fēng)格廣泛運用于用面向?qū)ο笳Z言實現(xiàn)的系統(tǒng)中,如Java和C。第57頁/共71頁58582021-11-1558582021-11-153.8 七種經(jīng)典軟件體系風(fēng)格比較3. 事件驅(qū)動風(fēng)格u基于此風(fēng)格的系統(tǒng)由許多子系統(tǒng)或元素組成。整個系統(tǒng)有許多目標(biāo),并利用消息協(xié)作的方式來工作。在這些子系統(tǒng)中,有一個主子系統(tǒng)負(fù)責(zé)整個系統(tǒng)的運行。每個元素?fù)碛惺录邮蘸吞幚頇C(jī)制。u這種風(fēng)格易于完成并發(fā)多任務(wù),擁有良好的延展性。子系統(tǒng)通過復(fù)合可以構(gòu)成更復(fù)雜的系統(tǒng)。與面向?qū)ο箫L(fēng)格不同的是,這種風(fēng)格具有良好的交互特性。u缺點是:它對系統(tǒng)計算控制能力
19、弱,很難共享大量數(shù)據(jù),對象之間的邏輯也較復(fù)雜。u集成開發(fā)環(huán)境(Integrated Development EnVironment,IDB) 應(yīng)用了此風(fēng)格。第58頁/共71頁59592021-11-1559592021-11-1559592021-11-153.8 七種經(jīng)典軟件體系風(fēng)格比較4.分層風(fēng)格u整個的系統(tǒng)被分解成許多層。每層為上層提供服務(wù),同時接受來自較低層的服務(wù)。u這類型的風(fēng)格支持抽象化和軟件重用性,而且有不錯的擴(kuò)展性。u但是因為方法調(diào)用的間接性,可能影響整個系統(tǒng)的性能。u典型的分層系統(tǒng)是網(wǎng)絡(luò)協(xié)議。第59頁/共71頁60602021-11-1560602021-11-15606020
20、21-11-153.8 七種經(jīng)典軟件體系風(fēng)格比較5. 數(shù)據(jù)共享,也稱為庫風(fēng)格u中央的數(shù)據(jù)單元被共享,它為一些單元提供存儲和訪問服務(wù)。整個的系統(tǒng)有一個控制單元。u這種風(fēng)格具備良好的知識庫擴(kuò)展性,能解決具體領(lǐng)域的問題。u因此這種風(fēng)格通常用于專家系統(tǒng),如自然語言處理和模式識別。第60頁/共71頁61612021-11-1561612021-11-1561612021-11-153.8 七種經(jīng)典軟件體系風(fēng)格比較6.解釋器風(fēng)格u具有固定的結(jié)構(gòu)、偽代碼和解釋器引擎。解釋器引擎包括它的定義及其操作狀態(tài)。u以這種風(fēng)格為基礎(chǔ)的系統(tǒng)能處理具體領(lǐng)域的問題,典型的應(yīng)用是解釋性語言的解釋器。第61頁/共71頁62622
21、021-11-1562622021-11-1562622021-11-1562622021-11-153.8 七種經(jīng)典軟件體系風(fēng)格比較7.反饋控制環(huán)風(fēng)格u最典型特性是:通過其學(xué)習(xí)構(gòu)件和決策者構(gòu)件的運用,能利用學(xué)習(xí)和信息更新增強自身的功能。u它的典型的應(yīng)用是生產(chǎn)管理系統(tǒng)。第62頁/共71頁63632021-11-1563632021-11-1563632021-11-153.8 七種經(jīng)典軟件體系風(fēng)格比較從這7種結(jié)構(gòu)風(fēng)格的比較中,能發(fā)現(xiàn)這些風(fēng)格具有的一個共同性質(zhì)屬性:良好的擴(kuò)展性。實際上,基于軟件工程學(xué)的原則,好的軟件總是傾向于可變化、易擴(kuò)展。擴(kuò)展困難的軟件當(dāng)然不是好軟件,因此一種不能支持系統(tǒng)擴(kuò)展
22、的結(jié)構(gòu)風(fēng)格將不具備可擴(kuò)展性。每種風(fēng)格只能在特定環(huán)境中使用。它們趨向于以犧牲其他質(zhì)量屬性為代價得到其中一個好的質(zhì)量屬性。如,管道過濾器風(fēng)格有不好的交互性,但事件驅(qū)動風(fēng)格卻對這種交互有不錯的支持。事件驅(qū)使風(fēng)格很難共享數(shù)據(jù),但數(shù)據(jù)共享風(fēng)格最大的優(yōu)勢正是對數(shù)據(jù)共享的支持。第63頁/共71頁3.12 異構(gòu)風(fēng)格 3.12 異構(gòu)風(fēng)格異構(gòu)風(fēng)格 的集成的集成 案例一案例一第64頁/共71頁3.12 異構(gòu)風(fēng)格異構(gòu)風(fēng)格 的集成的集成所有的體系結(jié)構(gòu)不僅有很緊密的聯(lián)系,而且在大所有的體系結(jié)構(gòu)不僅有很緊密的聯(lián)系,而且在大多數(shù)情況下是被一起使用的。多數(shù)情況下是被一起使用的。對于一個實際的系統(tǒng),甚至不能判斷它是對于一個實際的
23、系統(tǒng),甚至不能判斷它是A風(fēng)格、風(fēng)格、B風(fēng)格還是風(fēng)格還是C風(fēng)格,因為沒有足夠的理由把它歸風(fēng)格,因為沒有足夠的理由把它歸為任何一種獨立的體系結(jié)構(gòu)風(fēng)格。為任何一種獨立的體系結(jié)構(gòu)風(fēng)格。這種系統(tǒng)類型可以被稱為這種系統(tǒng)類型可以被稱為復(fù)合系統(tǒng)復(fù)合系統(tǒng),這種系統(tǒng)的,這種系統(tǒng)的構(gòu)建模式被稱為構(gòu)建模式被稱為異構(gòu)風(fēng)格的集成異構(gòu)風(fēng)格的集成。第65頁/共71頁第66頁/共71頁上圖展示了一個虛擬系統(tǒng),它整合了許多體系結(jié)構(gòu)風(fēng)格。可上圖展示了一個虛擬系統(tǒng),它整合了許多體系結(jié)構(gòu)風(fēng)格??梢园颜麄€系統(tǒng)當(dāng)成一個以把整個系統(tǒng)當(dāng)成一個分層系統(tǒng)分層系統(tǒng)。這樣它可以被分成兩層:。這樣它可以被分成兩層:第第1層是原始數(shù)據(jù)生成層,第層是原始數(shù)
24、據(jù)生成層,第2層是解釋層。層是解釋層。n在第在第1層,主要的組成部分是層,主要的組成部分是管道過濾器管道過濾器子系統(tǒng)。子系統(tǒng)。(1)第第1個過濾器中的數(shù)據(jù)能夠被送到第個過濾器中的數(shù)據(jù)能夠被送到第2個過濾器中。個過濾器中。(2)當(dāng)?shù)诋?dāng)?shù)?個過濾器收到數(shù)據(jù)時,將會產(chǎn)生相應(yīng)的信息,然個過濾器收到數(shù)據(jù)時,將會產(chǎn)生相應(yīng)的信息,然后將此信息傳送到事件隊列構(gòu)件和服務(wù)提供對象構(gòu)件中。后將此信息傳送到事件隊列構(gòu)件和服務(wù)提供對象構(gòu)件中。(3)當(dāng)事件隊列不為空時,它將會激發(fā)相應(yīng)的對象來處理當(dāng)事件隊列不為空時,它將會激發(fā)相應(yīng)的對象來處理這個事件,并完成任務(wù)。這是一個典型的這個事件,并完成任務(wù)。這是一個典型的事件驅(qū)動體事件驅(qū)動體系結(jié)系結(jié)構(gòu)風(fēng)格的例子。構(gòu)風(fēng)格的例子。3.12 異構(gòu)風(fēng)格異構(gòu)風(fēng)格 的集成的集成 案例一案例一第67頁/共71頁(4)當(dāng)服務(wù)提供對象構(gòu)件接收到由第當(dāng)服務(wù)提供對象構(gòu)件接收到由第2個過濾器傳來的信個過濾器傳來的信息時,它將把這些信息記錄在信息庫里。息時,它將把這些信息記錄在信息庫里。u它就像是在數(shù)據(jù)共享風(fēng)格中的黑板。在這個信息庫
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年保障擔(dān)保合同
- 2025年加盟獨家合同
- 2025年保險產(chǎn)品分期付款合同
- 社交媒體視頻制作服務(wù)合同范文
- 杭州市棋類俱樂部租賃合同
- 海運合同運費調(diào)整條款
- 品牌授權(quán)及技術(shù)轉(zhuǎn)讓合同
- 食品加工廠建設(shè)合作合同
- 二零二四年度云計算服務(wù)與支持合同范本3篇
- 二零二五年度除塵器配件創(chuàng)新研發(fā)與推廣合同3篇
- Unit 6 Beautiful landscapes Integration說課稿 - 2024-2025學(xué)年譯林版英語七年級下冊
- 北京市東城區(qū)2023-2024學(xué)年高二下學(xué)期期末英語試題 含解析
- 測繪學(xué)基礎(chǔ)知識單選題100道及答案解析
- 2024年國家焊工職業(yè)技能理論考試題庫(含答案)
- 特魯索綜合征
- 2024年山東省泰安市高考語文一模試卷
- TCL任職資格體系資料HR
- 《中國古代寓言》導(dǎo)讀(課件)2023-2024學(xué)年統(tǒng)編版語文三年級下冊
- 五年級上冊計算題大全1000題帶答案
- 工程建設(shè)行業(yè)標(biāo)準(zhǔn)內(nèi)置保溫現(xiàn)澆混凝土復(fù)合剪力墻技術(shù)規(guī)程
- 屋面細(xì)石混凝土保護(hù)層施工方案及方法
評論
0/150
提交評論