軟件體系結(jié)構(gòu)風(fēng)格精選課件_第1頁
軟件體系結(jié)構(gòu)風(fēng)格精選課件_第2頁
軟件體系結(jié)構(gòu)風(fēng)格精選課件_第3頁
軟件體系結(jié)構(gòu)風(fēng)格精選課件_第4頁
軟件體系結(jié)構(gòu)風(fēng)格精選課件_第5頁
已閱讀5頁,還剩89頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

軟件體系結(jié)構(gòu)風(fēng)格()軟件體系結(jié)構(gòu)風(fēng)格()

體系結(jié)構(gòu)風(fēng)格概述對在實踐中一些常見的體系結(jié)構(gòu)風(fēng)格(模式)的討論,有助于我們對軟件體系結(jié)構(gòu)的理解。對常見體系結(jié)構(gòu)風(fēng)格的討論框架(1)每一個常見的體系結(jié)構(gòu)風(fēng)格,都可以看成是一組計算構(gòu)件以及構(gòu)件間的交互。(2)以圖示的方式表示構(gòu)件和構(gòu)件間的交互。

2

體系結(jié)構(gòu)風(fēng)格概述對在實踐中一些常見的體系結(jié)構(gòu)風(fēng)格(模式

定義軟件體系結(jié)構(gòu)風(fēng)格是描述某一特定應(yīng)用領(lǐng)域中系統(tǒng)組織方式的慣用模式。軟件體系結(jié)構(gòu)風(fēng)格定義的主要內(nèi)涵:定義了一個系統(tǒng)家族,即一個體系結(jié)構(gòu)定義一個詞匯表和一組約束。詞匯表中包含一些構(gòu)件和連接件類型。約束指出系統(tǒng)是如何將這些構(gòu)件和連接件組合起來的。

3

定義軟件體系結(jié)構(gòu)風(fēng)格是描述某一特定應(yīng)用領(lǐng)域中系統(tǒng)組織方

研究意義

體系結(jié)構(gòu)風(fēng)格反映了領(lǐng)域中眾多系統(tǒng)所共有的結(jié)構(gòu)和語義特性,并指導(dǎo)如何將各個模塊和子系統(tǒng)有效地組織成一個完整的系統(tǒng)。4

研究意義4特別注意:體系結(jié)構(gòu)風(fēng)格不是對軟件進(jìn)行分類的標(biāo)準(zhǔn)。它僅僅是表示描述軟件的不同角度而已。例如:一個系統(tǒng)采用了分層風(fēng)格,但這并不妨礙它用面向?qū)ο蟮姆椒▉韺崿F(xiàn)。同一個系統(tǒng)采用多種風(fēng)格造成了所謂體系結(jié)構(gòu)風(fēng)格的異構(gòu)組合。5特別注意:體系結(jié)構(gòu)風(fēng)格不是對軟件進(jìn)行分類的標(biāo)準(zhǔn)。它僅僅是表示

體系結(jié)構(gòu)風(fēng)格的四要素(1)提供一個詞匯表;(2)定義一套配置規(guī)則;(3)定義一套語義解釋原則;(4)定義對基于這種風(fēng)格的系統(tǒng)所進(jìn)行的分析。6

體系結(jié)構(gòu)風(fēng)格的四要素(1)提供一個詞匯表;6

經(jīng)典的體系結(jié)構(gòu)風(fēng)格

◎數(shù)據(jù)流風(fēng)格:批處理序列;管道和過濾器?!蛘{(diào)用/返回風(fēng)格:主程序/子程序;面向?qū)ο箫L(fēng)格;層次結(jié)構(gòu)?!颡毩?gòu)件風(fēng)格:進(jìn)程通訊;事件系統(tǒng)?!蛱摂M機風(fēng)格:解釋器;基于規(guī)則的系統(tǒng)?!騻}庫風(fēng)格:數(shù)據(jù)庫系統(tǒng);超文本系統(tǒng);黑板系統(tǒng)。7

經(jīng)典的體系結(jié)構(gòu)風(fēng)格◎數(shù)據(jù)流風(fēng)格:批處理序列;管道和

管道和過濾器模式:模型

構(gòu)件:過濾器,接收數(shù)據(jù)輸入,進(jìn)行轉(zhuǎn)化后輸出過濾器是獨立的實體,相互之間沒有狀態(tài)的依賴對一個過濾器而言,它上游和下游的過濾器是透明的交互由管道提供,管道負(fù)責(zé)連接一個過濾器的輸出和另一個過濾器的輸入。8

管道和過濾器模式:模型構(gòu)件:過濾器,接收數(shù)據(jù)輸入,進(jìn)

管道和過濾器模式

管道過濾器通用的結(jié)構(gòu)有:(1)管線:也稱為流水線,即限制系統(tǒng)的拓?fù)浣Y(jié)構(gòu)只能是過濾器的線性結(jié)構(gòu);如:批處理系統(tǒng)、UnixShell、編譯器(2)有界管道:限制了在管道中能容納或傳輸?shù)臄?shù)據(jù)量;(3)類型定義管道:也稱類型管道,即要求明確定義在兩個過濾器間傳輸?shù)臄?shù)據(jù)類型。9

管道和過濾器模式管道過濾器通用的結(jié)構(gòu)有:9

管道和過濾器模式實例3.2經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格10

管道和過濾器模式實例3.2經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格10

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式

面向?qū)ο竽P停?)封裝(2)繼承(3)多態(tài)性11

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式面向?qū)ο竽P?1黑板系統(tǒng)由三部分組成:知識源、黑板數(shù)據(jù)結(jié)構(gòu)、控制。它僅僅是表示描述軟件的不同角度而已。(1)每一層都向它的上一層提供服務(wù)。3客戶/服務(wù)器風(fēng)格(4)被解釋的程序當(dāng)前狀態(tài)的表示

管道和過濾器模式定義了一個系統(tǒng)家族,即一個體系結(jié)構(gòu)定義一個詞匯表和一組約束。下圖是一個基于事件驅(qū)動的軟件系統(tǒng)的示意圖:需要多個領(lǐng)域的專門知識協(xié)作解決讓知識源響應(yīng)偶然事件。

基于事件的隱式調(diào)用模式知識庫是倉庫系統(tǒng)的典型實例:交互由管道提供,管道負(fù)責(zé)連接一個過濾器的輸出和另一個過濾器的輸入。

倉庫系統(tǒng)及知識庫模式(1)每一層都向它的上一層提供服務(wù)。讓知識源響應(yīng)偶然事件。Net平臺也是一個明顯的分層系統(tǒng):軟件體系結(jié)構(gòu)風(fēng)格定義的主要內(nèi)涵:

管道和過濾器模式:模型(2)以圖示的方式表示構(gòu)件和構(gòu)件間的交互。

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式

構(gòu)件:對象,或者說是抽象數(shù)據(jù)類型的實例。(1)對象是一種被稱作管理者的構(gòu)件,負(fù)責(zé)保持資源的完整性。(2)對象通過函數(shù)和過程的調(diào)用來交互的。12黑板系統(tǒng)由三部分組成:知識源、黑板數(shù)據(jù)結(jié)構(gòu)、控制。

數(shù)據(jù)

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式

這種模式的兩個重要方面:(1)對象維護(hù)自身表示的完整性;(2)這種表示對其他對象是隱藏的。13

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式這種模式的兩個重要方面:1

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式實例人事檔案管理系統(tǒng)14

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式實例人事檔案管理系統(tǒng)14

基于事件的隱式調(diào)用模式對象之間通過方法調(diào)用進(jìn)行交互,但是調(diào)用是隱式的,通過事件機制進(jìn)行調(diào)用觸發(fā)。(1)對象可以發(fā)布(廣播)事件。(2)對象也可以通過事件注冊將某一個方法和事件進(jìn)行綁定。注意:一旦該事件觸發(fā),所有與該事件綁定的方法都將被調(diào)用。15

基于事件的隱式調(diào)用模式對象之間通過方法調(diào)用進(jìn)行交互,

基于事件的隱式調(diào)用模式

構(gòu)件:模塊,模塊既可以是過程,又可以是事件的集合。過程可以用通用的方式調(diào)用,也可以在系統(tǒng)事件中注冊一些過程,當(dāng)發(fā)生這些事件時,過程被調(diào)用。特點:事件的觸發(fā)者并不知道哪些構(gòu)件會被這些事件影響。(1)不能假定構(gòu)件的處理順序;(2)不知道哪些過程會被調(diào)用;(3)許多隱式調(diào)用的系統(tǒng)也包含顯式調(diào)用作為構(gòu)件交互的補充形式。16

基于事件的隱式調(diào)用模式構(gòu)件:模塊,模塊既可以

基于事件的隱式調(diào)用模式

下圖是一個基于事件驅(qū)動的軟件系統(tǒng)的示意圖:17

基于事件的隱式調(diào)用模式下圖是一個基于事件驅(qū)動的軟件系

基于事件的隱式調(diào)用模式事件驅(qū)動風(fēng)格和面向?qū)ο箫L(fēng)格的關(guān)系基于面向?qū)ο箫L(fēng)格的系統(tǒng)由多個封裝起來的對象構(gòu)成,對象之間通過消息傳遞實現(xiàn)通信,而事件驅(qū)動正是對消息傳遞機制的一種實現(xiàn)。所以基于事件驅(qū)動風(fēng)格的系統(tǒng)往往都是面向?qū)ο蟮摹?8

基于事件的隱式調(diào)用模式18

分層模式一個使用分層模式的系統(tǒng)體系出一種層次結(jié)構(gòu)。(1)每一層都向它的上一層提供服務(wù)。(2)每一層都使用它下一層的服務(wù)。下層無需知道上層的存在,每一層對其上層隱藏其實現(xiàn)細(xì)節(jié)(虛擬機)。19

分層模式一個使用分層模式的系統(tǒng)體系出一種層次結(jié)構(gòu)。19

分層模式實例—計算機網(wǎng)絡(luò)的設(shè)計

20

分層模式實例—計算機網(wǎng)絡(luò)的設(shè)計20

分層模式實例.Net平臺也是一個明顯的分層系統(tǒng):21

分層模式實例.Net平臺也是一個明顯的分層系統(tǒng):21

倉庫系統(tǒng)及知識庫模式倉庫系統(tǒng)體系結(jié)構(gòu):能夠描述很多系統(tǒng);共同點是共享數(shù)據(jù);倉庫系統(tǒng)運行機制:收集、操作、保存大量的數(shù)據(jù);知識庫是倉庫系統(tǒng)的典型實例:具有成長的特性。22

倉庫系統(tǒng)及知識庫模式倉庫系統(tǒng)體系結(jié)構(gòu):22知識庫是倉庫系統(tǒng)的典型實例:提供領(lǐng)域?qū)iT知識(DomainExpertise)把問題分為幾個部分,每個部分獨立計算(2)不知道哪些過程會被調(diào)用;它僅僅是表示描述軟件的不同角度而已。◎倉庫風(fēng)格:數(shù)據(jù)庫系統(tǒng);這種模式的兩個重要方面:共同點是共享數(shù)據(jù);響應(yīng)黑板上的變化。對常見體系結(jié)構(gòu)風(fēng)格的討論框架黑板系統(tǒng)由三部分組成:知識源、黑板數(shù)據(jù)結(jié)構(gòu)、控制。軟件體系結(jié)構(gòu)風(fēng)格是描述某一特定應(yīng)用領(lǐng)域中系統(tǒng)組織方式的慣用模式。

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式(1)每一層都向它的上一層提供服務(wù)。所以基于事件驅(qū)動風(fēng)格的系統(tǒng)往往都是面向?qū)ο蟮?。即由輸入事?wù)選擇進(jìn)行何種處理,并把執(zhí)行結(jié)果作為當(dāng)前狀態(tài)存儲到中央數(shù)據(jù)結(jié)構(gòu)中。解釋器是一個軟件虛擬機,它一般包括四個構(gòu)件:詞匯表中包含一些構(gòu)件和連接件類型。(4)定義對基于這種風(fēng)格的系統(tǒng)所進(jìn)行的分析。

倉庫系統(tǒng)及知識庫模式

倉庫系統(tǒng)及知識庫模式

在倉庫模式中,有兩種不同的構(gòu)件:(1)中央數(shù)據(jù)結(jié)構(gòu)構(gòu)件:代表系統(tǒng)當(dāng)前狀態(tài);(2)一些相對獨立的構(gòu)件的集合:這些構(gòu)件對中央數(shù)據(jù)存儲進(jìn)行操作。

23知識庫是倉庫系統(tǒng)的典型實例:

倉庫系統(tǒng)及知識庫模式在

倉庫系統(tǒng)及知識庫模式

在倉庫模式中,各個組件之間進(jìn)行數(shù)據(jù)交換,可以使用兩種不同的方式:(1)共享的數(shù)據(jù)放在中心數(shù)據(jù)庫中,所有構(gòu)件可以通過訪問數(shù)據(jù)庫進(jìn)行交互;(2)每個構(gòu)件維護(hù)自己的數(shù)據(jù)庫,通過顯示的傳遞數(shù)據(jù)與其他構(gòu)件進(jìn)行交互。當(dāng)要交換或共享大量的數(shù)據(jù)時,倉庫模式是最常用的解決方案。

24

倉庫系統(tǒng)及知識庫模式在倉庫模式中,各個組件之間進(jìn)行數(shù)

倉庫系統(tǒng)及知識庫模式控制原則的選取產(chǎn)生兩個主要的子類:(1)若輸入流中某類事件觸發(fā)系統(tǒng)相應(yīng)的進(jìn)程執(zhí)行,則倉庫是傳統(tǒng)型數(shù)據(jù)庫;即由輸入事務(wù)選擇進(jìn)行何種處理,并把執(zhí)行結(jié)果作為當(dāng)前狀態(tài)存儲到中央數(shù)據(jù)結(jié)構(gòu)中。(2)若中央數(shù)據(jù)結(jié)構(gòu)的當(dāng)前狀態(tài)觸發(fā)系統(tǒng)相應(yīng)的進(jìn)程執(zhí)行,則倉庫是黑板系統(tǒng)。即由中央數(shù)據(jù)結(jié)構(gòu)的當(dāng)前狀態(tài)決定進(jìn)行何種處理。25

倉庫系統(tǒng)及知識庫模式控制原則的選取產(chǎn)生兩個主要的子類:2

黑板模式-模型

黑板系統(tǒng)由三部分組成:知識源、黑板數(shù)據(jù)結(jié)構(gòu)、控制。26

黑板模式-模型黑板系統(tǒng)由三部分組成:知識源、黑板數(shù)據(jù)

黑板模式:功能劃分知識源把問題分為幾個部分,每個部分獨立計算響應(yīng)黑板上的變化。黑板數(shù)據(jù)結(jié)構(gòu)全局?jǐn)?shù)據(jù)庫,包含解域的全部狀態(tài)知識源相互作用的唯一媒介??刂谱屩R源響應(yīng)偶然事件。27

黑板模式:功能劃分知識源27

黑板模式:知識提供知識源提供領(lǐng)域?qū)iT知識(DomainExpertise)黑板數(shù)據(jù)結(jié)構(gòu)提供數(shù)據(jù)存儲和通信(StorageandCommunication)控制問題解決策略編碼(EncodesProblemSolvingStrategy)28

黑板模式:知識提供知識源28

黑板模式特點沒有直接的算法可解

多種方法都可能解決問題需要多個領(lǐng)域的專門知識協(xié)作解決具有不確定性

數(shù)據(jù)和解決方案可能錯誤或變化數(shù)據(jù)中信噪比的變化算法接口的變化黑板是一種特別的倉庫,主要用于需要對凌亂的信息進(jìn)行處理的領(lǐng)域,其控制策略必須是機會主義的。

29

黑板模式特點沒有直接的算法可解29

黑板系統(tǒng)結(jié)構(gòu)

30

黑板系統(tǒng)結(jié)構(gòu)30

黑板系統(tǒng)實例

31

黑板系統(tǒng)實例31

解釋器模式解釋器是一個用來執(zhí)行其他程序的程序。解釋器針對不同的硬件平臺實現(xiàn)了一個虛擬機。解釋器將高級抽象層次的程序翻譯為低級抽象層次所能理解的指令,以消除在程序語言與硬件之間存在的語義差異。32

解釋器模式解釋器是一個用來執(zhí)行其他程序的程序。32

解釋器模式解釋器通常用在程序語言定義的計算和有效硬件操作確定的計算之間建立對應(yīng)和聯(lián)系。簡單和小規(guī)模的解釋器只完成基本的信息識別和轉(zhuǎn)換復(fù)雜的解釋器需要從詞法到句法、到語法的復(fù)雜識別和處理作為一種體系結(jié)構(gòu)風(fēng)格,解釋器已經(jīng)被廣泛應(yīng)用在從系統(tǒng)軟件到應(yīng)用軟件的各個層次。包括各類語言環(huán)境、Internet瀏覽器、數(shù)據(jù)分析與轉(zhuǎn)換等;LISI、Prolog、JavaScript、VBScript、HTML、Matlab、數(shù)據(jù)庫系統(tǒng)(SQL解釋器)、各種通信協(xié)議等。33

解釋器模式解釋器通常用在程序語言定義的計算和有效硬件操

解釋器模式:構(gòu)件解釋器是一個軟件虛擬機,它一般包括四個構(gòu)件:(1)解釋引擎(2)被解釋的偽程序(源代碼)(3)解釋引擎的控制狀態(tài)的表示(在某個時刻需要執(zhí)行哪些指令)(4)被解釋的程序當(dāng)前狀態(tài)的表示解釋器通過構(gòu)建一個虛擬機來延伸當(dāng)前計算平臺的功能。34

解釋器模式:構(gòu)件解釋器是一個軟件虛擬機,它一般包括四

解釋器模式:模型

35

解釋器模式:模型35

C/S風(fēng)格—基本概念◎C/S軟件體系結(jié)構(gòu)是基于資源不對等,且為實現(xiàn)共享而提出來的,是20世紀(jì)90年代成熟起來的技術(shù),C/S體系結(jié)構(gòu)定義了工作站如何與服務(wù)器相連,以實現(xiàn)數(shù)據(jù)和應(yīng)用分布到多個處理機上?!駽/S體系結(jié)構(gòu)有三個主要組成部分:數(shù)據(jù)庫服務(wù)器、客戶應(yīng)用程序和網(wǎng)絡(luò)。36

C/S風(fēng)格—基本概念◎C/S軟件體系結(jié)構(gòu)是基于資源不所以基于事件驅(qū)動風(fēng)格的系統(tǒng)往往都是面向?qū)ο蟮?。知識庫是倉庫系統(tǒng)的典型實例:軟件體系結(jié)構(gòu)風(fēng)格定義的主要內(nèi)涵:

倉庫系統(tǒng)及知識庫模式(2)一些相對獨立的構(gòu)件的集合:這些構(gòu)件對中央數(shù)據(jù)存儲進(jìn)行操作。讓知識源響應(yīng)偶然事件。(2)不知道哪些過程會被調(diào)用;

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式實例(1)每一層都向它的上一層提供服務(wù)。

倉庫系統(tǒng)及知識庫模式

分層模式實例—計算機網(wǎng)絡(luò)的設(shè)計◎調(diào)用/返回風(fēng)格:主程序/子程序;在倉庫模式中,有兩種不同的構(gòu)件:

C/S風(fēng)格—基本概念從某種程度上來說,B/S結(jié)構(gòu)是一種全新的軟件體系結(jié)構(gòu)。

倉庫系統(tǒng)及知識庫模式(2)以圖示的方式表示構(gòu)件和構(gòu)件間的交互。

黑板模式-模型把問題分為幾個部分,每個部分獨立計算

倉庫系統(tǒng)及知識庫模式

體系結(jié)構(gòu)3.3客戶/服務(wù)器風(fēng)格37所以基于事件驅(qū)動風(fēng)格的系統(tǒng)往往都是面向?qū)ο蟮摹?/p>

體系結(jié)構(gòu)3

C/S風(fēng)格—處理流程38

C/S風(fēng)格—處理流程38

三層C/S風(fēng)格—體系結(jié)構(gòu)39

三層C/S風(fēng)格—體系結(jié)構(gòu)39

三層C/S風(fēng)格—處理流程40

三層C/S風(fēng)格—處理流程40

B/S風(fēng)格—基本概念瀏覽器/服務(wù)器(B/S)風(fēng)格就是上述三層應(yīng)用結(jié)構(gòu)的一種實現(xiàn)方式,其具體結(jié)構(gòu)為:瀏覽器/Web服務(wù)器/數(shù)據(jù)庫服務(wù)器。B/S體系結(jié)構(gòu)主要是利用不斷成熟的WWW瀏覽器技術(shù),結(jié)合瀏覽器的多種腳本語言,用通用瀏覽器就實現(xiàn)了原來需要復(fù)雜的專用軟件才能實現(xiàn)的強大功能,并節(jié)約了開發(fā)成本。從某種程度上來說,B/S結(jié)構(gòu)是一種全新的軟件體系結(jié)構(gòu)。41

B/S風(fēng)格—基本概念瀏覽器/服務(wù)器(B/S)風(fēng)格就是上

B/S風(fēng)格—體系結(jié)構(gòu)42

B/S風(fēng)格—體系結(jié)構(gòu)424343

C/S與B/S混合之查改有別模型

C/S與B/S混合之查改有別模型

C/S與B/S混合之內(nèi)外有別模型

C/S與B/S混合之內(nèi)外有別模型Thanks!END46Thanks!END46

經(jīng)典的體系結(jié)構(gòu)風(fēng)格(2)對象通過函數(shù)和過程的調(diào)用來交互的。解釋器將高級抽象層次的程序翻譯為低級抽象層次所能理解的指令,以消除在程序語言與硬件之間存在的語義差異。(4)定義對基于這種風(fēng)格的系統(tǒng)所進(jìn)行的分析。(2)一些相對獨立的構(gòu)件的集合:這些構(gòu)件對中央數(shù)據(jù)存儲進(jìn)行操作。讓知識源響應(yīng)偶然事件。軟件體系結(jié)構(gòu)風(fēng)格是描述某一特定應(yīng)用領(lǐng)域中系統(tǒng)組織方式的慣用模式。詞匯表中包含一些構(gòu)件和連接件類型。(3)許多隱式調(diào)用的系統(tǒng)也包含顯式調(diào)用作為構(gòu)件交互的補充形式。解釋器針對不同的硬件平臺實現(xiàn)了一個虛擬機。解釋器通常用在程序語言定義的計算和有效硬件操作確定的計算之間建立對應(yīng)和聯(lián)系。(4)被解釋的程序當(dāng)前狀態(tài)的表示(1)對象可以發(fā)布(廣播)事件。解釋器通過構(gòu)建一個虛擬機來延伸當(dāng)前計算平臺的功能。解釋器是一個用來執(zhí)行其他程序的程序。管道過濾器通用的結(jié)構(gòu)有:(1)每一個常見的體系結(jié)構(gòu)風(fēng)格,都可以看成是一組計算構(gòu)件以及構(gòu)件間的交互。(2)有界管道:限制了在管道中能容納或傳輸?shù)臄?shù)據(jù)量;2經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格

倉庫系統(tǒng)及知識庫模式(1)對象可以發(fā)布(廣播)事件。即由輸入事務(wù)選擇進(jìn)行何種處理,并把執(zhí)行結(jié)果作為當(dāng)前狀態(tài)存儲到中央數(shù)據(jù)結(jié)構(gòu)中。

管道和過濾器模式黑板系統(tǒng)由三部分組成:知識源、黑板數(shù)據(jù)結(jié)構(gòu)、控制。

分層模式實例—計算機網(wǎng)絡(luò)的設(shè)計讓知識源響應(yīng)偶然事件。(2)對象也可以通過事件注冊將某一個方法和事件進(jìn)行綁定?!騻}庫風(fēng)格:數(shù)據(jù)庫系統(tǒng);在倉庫模式中,有兩種不同的構(gòu)件:

解釋器模式:模型

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式提供數(shù)據(jù)存儲和通信(StorageandCommunication)交互由管道提供,管道負(fù)責(zé)連接一個過濾器的輸出和另一個過濾器的輸入。(4)被解釋的程序當(dāng)前狀態(tài)的表示(4)定義對基于這種風(fēng)格的系統(tǒng)所進(jìn)行的分析。讓知識源響應(yīng)偶然事件。構(gòu)件:對象,或者說是抽象數(shù)據(jù)類型的實例。

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式(1)提供一個詞匯表;具有成長的特性。在倉庫模式中,有兩種不同的構(gòu)件:

倉庫系統(tǒng)及知識庫模式能夠描述很多系統(tǒng);算法接口的變化體系結(jié)構(gòu)風(fēng)格反映了領(lǐng)域中眾多系統(tǒng)所共有的結(jié)構(gòu)和語義特性,并指導(dǎo)如何將各個模塊和子系統(tǒng)有效地組織成一個完整的系統(tǒng)。當(dāng)要交換或共享大量的數(shù)據(jù)時,倉庫模式是最常用的解決方案。解釋器將高級抽象層次的程序翻譯為低級抽象層次所能理解的指令,以消除在程序語言與硬件之間存在的語義差異。(2)不知道哪些過程會被調(diào)用;即由輸入事務(wù)選擇進(jìn)行何種處理,并把執(zhí)行結(jié)果作為當(dāng)前狀態(tài)存儲到中央數(shù)據(jù)結(jié)構(gòu)中。過濾器是獨立的實體,相互之間沒有狀態(tài)的依賴數(shù)據(jù)中信噪比的變化

分層模式實例—計算機網(wǎng)絡(luò)的設(shè)計

分層模式實例—計算機網(wǎng)絡(luò)的設(shè)計共同點是共享數(shù)據(jù);同一個系統(tǒng)采用多種風(fēng)格造成了所謂體系結(jié)構(gòu)風(fēng)格的異構(gòu)組合。下層無需知道上層的存在,每一層對其上層隱藏其實現(xiàn)細(xì)節(jié)(虛擬機)。下層無需知道上層的存在,每一層對其上層隱藏其實現(xiàn)細(xì)節(jié)(虛擬機)。

解釋器模式:模型(1)每一個常見的體系結(jié)構(gòu)風(fēng)格,都可以看成是一組計算構(gòu)件以及構(gòu)件間的交互。2經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格(1)提供一個詞匯表;管道過濾器通用的結(jié)構(gòu)有:提供領(lǐng)域?qū)iT知識(DomainExpertise)特別注意:體系結(jié)構(gòu)風(fēng)格不是對軟件進(jìn)行分類的標(biāo)準(zhǔn)。能夠描述很多系統(tǒng);對在實踐中一些常見的體系結(jié)構(gòu)風(fēng)格(模式)的討論,有助于我們對軟件體系結(jié)構(gòu)的理解?!蛱摂M機風(fēng)格:解釋器;特別注意:體系結(jié)構(gòu)風(fēng)格不是對軟件進(jìn)行分類的標(biāo)準(zhǔn)。

黑板模式-模型(2)一些相對獨立的構(gòu)件的集合:這些構(gòu)件對中央數(shù)據(jù)存儲進(jìn)行操作。簡單和小規(guī)模的解釋器只完成基本的信息識別和轉(zhuǎn)換例如:一個系統(tǒng)采用了分層風(fēng)格,但這并不妨礙它用面向?qū)ο蟮姆椒▉韺崿F(xiàn)。定義了一個系統(tǒng)家族,即一個體系結(jié)構(gòu)定義一個詞匯表和一組約束。瀏覽器/服務(wù)器(B/S)風(fēng)格就是上述三層應(yīng)用結(jié)構(gòu)的一種實現(xiàn)方式,其具體結(jié)構(gòu)為:瀏覽器/Web服務(wù)器/數(shù)據(jù)庫服務(wù)器。(2)有界管道:限制了在管道中能容納或傳輸?shù)臄?shù)據(jù)量;提供領(lǐng)域?qū)iT知識(DomainExpertise)3客戶/服務(wù)器風(fēng)格事件驅(qū)動風(fēng)格和面向?qū)ο箫L(fēng)格的關(guān)系LISI、Prolog、JavaScript、VBScript、HTML、Matlab、數(shù)據(jù)庫系統(tǒng)(SQL解釋器)、各種通信協(xié)議等。讓知識源響應(yīng)偶然事件。

倉庫系統(tǒng)及知識庫模式

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式

C/S與B/S混合之查改有別模型謝謝觀看!

經(jīng)典的體系結(jié)構(gòu)風(fēng)格

倉庫系統(tǒng)及知識庫模式具有成長的軟件體系結(jié)構(gòu)風(fēng)格()軟件體系結(jié)構(gòu)風(fēng)格()

體系結(jié)構(gòu)風(fēng)格概述對在實踐中一些常見的體系結(jié)構(gòu)風(fēng)格(模式)的討論,有助于我們對軟件體系結(jié)構(gòu)的理解。對常見體系結(jié)構(gòu)風(fēng)格的討論框架(1)每一個常見的體系結(jié)構(gòu)風(fēng)格,都可以看成是一組計算構(gòu)件以及構(gòu)件間的交互。(2)以圖示的方式表示構(gòu)件和構(gòu)件間的交互。

49

體系結(jié)構(gòu)風(fēng)格概述對在實踐中一些常見的體系結(jié)構(gòu)風(fēng)格(模式

定義軟件體系結(jié)構(gòu)風(fēng)格是描述某一特定應(yīng)用領(lǐng)域中系統(tǒng)組織方式的慣用模式。軟件體系結(jié)構(gòu)風(fēng)格定義的主要內(nèi)涵:定義了一個系統(tǒng)家族,即一個體系結(jié)構(gòu)定義一個詞匯表和一組約束。詞匯表中包含一些構(gòu)件和連接件類型。約束指出系統(tǒng)是如何將這些構(gòu)件和連接件組合起來的。

50

定義軟件體系結(jié)構(gòu)風(fēng)格是描述某一特定應(yīng)用領(lǐng)域中系統(tǒng)組織方

研究意義

體系結(jié)構(gòu)風(fēng)格反映了領(lǐng)域中眾多系統(tǒng)所共有的結(jié)構(gòu)和語義特性,并指導(dǎo)如何將各個模塊和子系統(tǒng)有效地組織成一個完整的系統(tǒng)。51

研究意義4特別注意:體系結(jié)構(gòu)風(fēng)格不是對軟件進(jìn)行分類的標(biāo)準(zhǔn)。它僅僅是表示描述軟件的不同角度而已。例如:一個系統(tǒng)采用了分層風(fēng)格,但這并不妨礙它用面向?qū)ο蟮姆椒▉韺崿F(xiàn)。同一個系統(tǒng)采用多種風(fēng)格造成了所謂體系結(jié)構(gòu)風(fēng)格的異構(gòu)組合。52特別注意:體系結(jié)構(gòu)風(fēng)格不是對軟件進(jìn)行分類的標(biāo)準(zhǔn)。它僅僅是表示

體系結(jié)構(gòu)風(fēng)格的四要素(1)提供一個詞匯表;(2)定義一套配置規(guī)則;(3)定義一套語義解釋原則;(4)定義對基于這種風(fēng)格的系統(tǒng)所進(jìn)行的分析。53

體系結(jié)構(gòu)風(fēng)格的四要素(1)提供一個詞匯表;6

經(jīng)典的體系結(jié)構(gòu)風(fēng)格

◎數(shù)據(jù)流風(fēng)格:批處理序列;管道和過濾器?!蛘{(diào)用/返回風(fēng)格:主程序/子程序;面向?qū)ο箫L(fēng)格;層次結(jié)構(gòu)?!颡毩?gòu)件風(fēng)格:進(jìn)程通訊;事件系統(tǒng)。◎虛擬機風(fēng)格:解釋器;基于規(guī)則的系統(tǒng)?!騻}庫風(fēng)格:數(shù)據(jù)庫系統(tǒng);超文本系統(tǒng);黑板系統(tǒng)。54

經(jīng)典的體系結(jié)構(gòu)風(fēng)格◎數(shù)據(jù)流風(fēng)格:批處理序列;管道和

管道和過濾器模式:模型

構(gòu)件:過濾器,接收數(shù)據(jù)輸入,進(jìn)行轉(zhuǎn)化后輸出過濾器是獨立的實體,相互之間沒有狀態(tài)的依賴對一個過濾器而言,它上游和下游的過濾器是透明的交互由管道提供,管道負(fù)責(zé)連接一個過濾器的輸出和另一個過濾器的輸入。55

管道和過濾器模式:模型構(gòu)件:過濾器,接收數(shù)據(jù)輸入,進(jìn)

管道和過濾器模式

管道過濾器通用的結(jié)構(gòu)有:(1)管線:也稱為流水線,即限制系統(tǒng)的拓?fù)浣Y(jié)構(gòu)只能是過濾器的線性結(jié)構(gòu);如:批處理系統(tǒng)、UnixShell、編譯器(2)有界管道:限制了在管道中能容納或傳輸?shù)臄?shù)據(jù)量;(3)類型定義管道:也稱類型管道,即要求明確定義在兩個過濾器間傳輸?shù)臄?shù)據(jù)類型。56

管道和過濾器模式管道過濾器通用的結(jié)構(gòu)有:9

管道和過濾器模式實例3.2經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格57

管道和過濾器模式實例3.2經(jīng)典軟件體系結(jié)構(gòu)風(fēng)格10

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式

面向?qū)ο竽P停?)封裝(2)繼承(3)多態(tài)性58

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式面向?qū)ο竽P?1黑板系統(tǒng)由三部分組成:知識源、黑板數(shù)據(jù)結(jié)構(gòu)、控制。它僅僅是表示描述軟件的不同角度而已。(1)每一層都向它的上一層提供服務(wù)。3客戶/服務(wù)器風(fēng)格(4)被解釋的程序當(dāng)前狀態(tài)的表示

管道和過濾器模式定義了一個系統(tǒng)家族,即一個體系結(jié)構(gòu)定義一個詞匯表和一組約束。下圖是一個基于事件驅(qū)動的軟件系統(tǒng)的示意圖:需要多個領(lǐng)域的專門知識協(xié)作解決讓知識源響應(yīng)偶然事件。

基于事件的隱式調(diào)用模式知識庫是倉庫系統(tǒng)的典型實例:交互由管道提供,管道負(fù)責(zé)連接一個過濾器的輸出和另一個過濾器的輸入。

倉庫系統(tǒng)及知識庫模式(1)每一層都向它的上一層提供服務(wù)。讓知識源響應(yīng)偶然事件。Net平臺也是一個明顯的分層系統(tǒng):軟件體系結(jié)構(gòu)風(fēng)格定義的主要內(nèi)涵:

管道和過濾器模式:模型(2)以圖示的方式表示構(gòu)件和構(gòu)件間的交互。

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式

構(gòu)件:對象,或者說是抽象數(shù)據(jù)類型的實例。(1)對象是一種被稱作管理者的構(gòu)件,負(fù)責(zé)保持資源的完整性。(2)對象通過函數(shù)和過程的調(diào)用來交互的。59黑板系統(tǒng)由三部分組成:知識源、黑板數(shù)據(jù)結(jié)構(gòu)、控制。

數(shù)據(jù)

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式

這種模式的兩個重要方面:(1)對象維護(hù)自身表示的完整性;(2)這種表示對其他對象是隱藏的。60

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式這種模式的兩個重要方面:1

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式實例人事檔案管理系統(tǒng)61

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式實例人事檔案管理系統(tǒng)14

基于事件的隱式調(diào)用模式對象之間通過方法調(diào)用進(jìn)行交互,但是調(diào)用是隱式的,通過事件機制進(jìn)行調(diào)用觸發(fā)。(1)對象可以發(fā)布(廣播)事件。(2)對象也可以通過事件注冊將某一個方法和事件進(jìn)行綁定。注意:一旦該事件觸發(fā),所有與該事件綁定的方法都將被調(diào)用。62

基于事件的隱式調(diào)用模式對象之間通過方法調(diào)用進(jìn)行交互,

基于事件的隱式調(diào)用模式

構(gòu)件:模塊,模塊既可以是過程,又可以是事件的集合。過程可以用通用的方式調(diào)用,也可以在系統(tǒng)事件中注冊一些過程,當(dāng)發(fā)生這些事件時,過程被調(diào)用。特點:事件的觸發(fā)者并不知道哪些構(gòu)件會被這些事件影響。(1)不能假定構(gòu)件的處理順序;(2)不知道哪些過程會被調(diào)用;(3)許多隱式調(diào)用的系統(tǒng)也包含顯式調(diào)用作為構(gòu)件交互的補充形式。63

基于事件的隱式調(diào)用模式構(gòu)件:模塊,模塊既可以

基于事件的隱式調(diào)用模式

下圖是一個基于事件驅(qū)動的軟件系統(tǒng)的示意圖:64

基于事件的隱式調(diào)用模式下圖是一個基于事件驅(qū)動的軟件系

基于事件的隱式調(diào)用模式事件驅(qū)動風(fēng)格和面向?qū)ο箫L(fēng)格的關(guān)系基于面向?qū)ο箫L(fēng)格的系統(tǒng)由多個封裝起來的對象構(gòu)成,對象之間通過消息傳遞實現(xiàn)通信,而事件驅(qū)動正是對消息傳遞機制的一種實現(xiàn)。所以基于事件驅(qū)動風(fēng)格的系統(tǒng)往往都是面向?qū)ο蟮摹?5

基于事件的隱式調(diào)用模式18

分層模式一個使用分層模式的系統(tǒng)體系出一種層次結(jié)構(gòu)。(1)每一層都向它的上一層提供服務(wù)。(2)每一層都使用它下一層的服務(wù)。下層無需知道上層的存在,每一層對其上層隱藏其實現(xiàn)細(xì)節(jié)(虛擬機)。66

分層模式一個使用分層模式的系統(tǒng)體系出一種層次結(jié)構(gòu)。19

分層模式實例—計算機網(wǎng)絡(luò)的設(shè)計

67

分層模式實例—計算機網(wǎng)絡(luò)的設(shè)計20

分層模式實例.Net平臺也是一個明顯的分層系統(tǒng):68

分層模式實例.Net平臺也是一個明顯的分層系統(tǒng):21

倉庫系統(tǒng)及知識庫模式倉庫系統(tǒng)體系結(jié)構(gòu):能夠描述很多系統(tǒng);共同點是共享數(shù)據(jù);倉庫系統(tǒng)運行機制:收集、操作、保存大量的數(shù)據(jù);知識庫是倉庫系統(tǒng)的典型實例:具有成長的特性。69

倉庫系統(tǒng)及知識庫模式倉庫系統(tǒng)體系結(jié)構(gòu):22知識庫是倉庫系統(tǒng)的典型實例:提供領(lǐng)域?qū)iT知識(DomainExpertise)把問題分為幾個部分,每個部分獨立計算(2)不知道哪些過程會被調(diào)用;它僅僅是表示描述軟件的不同角度而已。◎倉庫風(fēng)格:數(shù)據(jù)庫系統(tǒng);這種模式的兩個重要方面:共同點是共享數(shù)據(jù);響應(yīng)黑板上的變化。對常見體系結(jié)構(gòu)風(fēng)格的討論框架黑板系統(tǒng)由三部分組成:知識源、黑板數(shù)據(jù)結(jié)構(gòu)、控制。軟件體系結(jié)構(gòu)風(fēng)格是描述某一特定應(yīng)用領(lǐng)域中系統(tǒng)組織方式的慣用模式。

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式(1)每一層都向它的上一層提供服務(wù)。所以基于事件驅(qū)動風(fēng)格的系統(tǒng)往往都是面向?qū)ο蟮?。即由輸入事?wù)選擇進(jìn)行何種處理,并把執(zhí)行結(jié)果作為當(dāng)前狀態(tài)存儲到中央數(shù)據(jù)結(jié)構(gòu)中。解釋器是一個軟件虛擬機,它一般包括四個構(gòu)件:詞匯表中包含一些構(gòu)件和連接件類型。(4)定義對基于這種風(fēng)格的系統(tǒng)所進(jìn)行的分析。

倉庫系統(tǒng)及知識庫模式

倉庫系統(tǒng)及知識庫模式

在倉庫模式中,有兩種不同的構(gòu)件:(1)中央數(shù)據(jù)結(jié)構(gòu)構(gòu)件:代表系統(tǒng)當(dāng)前狀態(tài);(2)一些相對獨立的構(gòu)件的集合:這些構(gòu)件對中央數(shù)據(jù)存儲進(jìn)行操作。

70知識庫是倉庫系統(tǒng)的典型實例:

倉庫系統(tǒng)及知識庫模式在

倉庫系統(tǒng)及知識庫模式

在倉庫模式中,各個組件之間進(jìn)行數(shù)據(jù)交換,可以使用兩種不同的方式:(1)共享的數(shù)據(jù)放在中心數(shù)據(jù)庫中,所有構(gòu)件可以通過訪問數(shù)據(jù)庫進(jìn)行交互;(2)每個構(gòu)件維護(hù)自己的數(shù)據(jù)庫,通過顯示的傳遞數(shù)據(jù)與其他構(gòu)件進(jìn)行交互。當(dāng)要交換或共享大量的數(shù)據(jù)時,倉庫模式是最常用的解決方案。

71

倉庫系統(tǒng)及知識庫模式在倉庫模式中,各個組件之間進(jìn)行數(shù)

倉庫系統(tǒng)及知識庫模式控制原則的選取產(chǎn)生兩個主要的子類:(1)若輸入流中某類事件觸發(fā)系統(tǒng)相應(yīng)的進(jìn)程執(zhí)行,則倉庫是傳統(tǒng)型數(shù)據(jù)庫;即由輸入事務(wù)選擇進(jìn)行何種處理,并把執(zhí)行結(jié)果作為當(dāng)前狀態(tài)存儲到中央數(shù)據(jù)結(jié)構(gòu)中。(2)若中央數(shù)據(jù)結(jié)構(gòu)的當(dāng)前狀態(tài)觸發(fā)系統(tǒng)相應(yīng)的進(jìn)程執(zhí)行,則倉庫是黑板系統(tǒng)。即由中央數(shù)據(jù)結(jié)構(gòu)的當(dāng)前狀態(tài)決定進(jìn)行何種處理。72

倉庫系統(tǒng)及知識庫模式控制原則的選取產(chǎn)生兩個主要的子類:2

黑板模式-模型

黑板系統(tǒng)由三部分組成:知識源、黑板數(shù)據(jù)結(jié)構(gòu)、控制。73

黑板模式-模型黑板系統(tǒng)由三部分組成:知識源、黑板數(shù)據(jù)

黑板模式:功能劃分知識源把問題分為幾個部分,每個部分獨立計算響應(yīng)黑板上的變化。黑板數(shù)據(jù)結(jié)構(gòu)全局?jǐn)?shù)據(jù)庫,包含解域的全部狀態(tài)知識源相互作用的唯一媒介??刂谱屩R源響應(yīng)偶然事件。74

黑板模式:功能劃分知識源27

黑板模式:知識提供知識源提供領(lǐng)域?qū)iT知識(DomainExpertise)黑板數(shù)據(jù)結(jié)構(gòu)提供數(shù)據(jù)存儲和通信(StorageandCommunication)控制問題解決策略編碼(EncodesProblemSolvingStrategy)75

黑板模式:知識提供知識源28

黑板模式特點沒有直接的算法可解

多種方法都可能解決問題需要多個領(lǐng)域的專門知識協(xié)作解決具有不確定性

數(shù)據(jù)和解決方案可能錯誤或變化數(shù)據(jù)中信噪比的變化算法接口的變化黑板是一種特別的倉庫,主要用于需要對凌亂的信息進(jìn)行處理的領(lǐng)域,其控制策略必須是機會主義的。

76

黑板模式特點沒有直接的算法可解29

黑板系統(tǒng)結(jié)構(gòu)

77

黑板系統(tǒng)結(jié)構(gòu)30

黑板系統(tǒng)實例

78

黑板系統(tǒng)實例31

解釋器模式解釋器是一個用來執(zhí)行其他程序的程序。解釋器針對不同的硬件平臺實現(xiàn)了一個虛擬機。解釋器將高級抽象層次的程序翻譯為低級抽象層次所能理解的指令,以消除在程序語言與硬件之間存在的語義差異。79

解釋器模式解釋器是一個用來執(zhí)行其他程序的程序。32

解釋器模式解釋器通常用在程序語言定義的計算和有效硬件操作確定的計算之間建立對應(yīng)和聯(lián)系。簡單和小規(guī)模的解釋器只完成基本的信息識別和轉(zhuǎn)換復(fù)雜的解釋器需要從詞法到句法、到語法的復(fù)雜識別和處理作為一種體系結(jié)構(gòu)風(fēng)格,解釋器已經(jīng)被廣泛應(yīng)用在從系統(tǒng)軟件到應(yīng)用軟件的各個層次。包括各類語言環(huán)境、Internet瀏覽器、數(shù)據(jù)分析與轉(zhuǎn)換等;LISI、Prolog、JavaScript、VBScript、HTML、Matlab、數(shù)據(jù)庫系統(tǒng)(SQL解釋器)、各種通信協(xié)議等。80

解釋器模式解釋器通常用在程序語言定義的計算和有效硬件操

解釋器模式:構(gòu)件解釋器是一個軟件虛擬機,它一般包括四個構(gòu)件:(1)解釋引擎(2)被解釋的偽程序(源代碼)(3)解釋引擎的控制狀態(tài)的表示(在某個時刻需要執(zhí)行哪些指令)(4)被解釋的程序當(dāng)前狀態(tài)的表示解釋器通過構(gòu)建一個虛擬機來延伸當(dāng)前計算平臺的功能。81

解釋器模式:構(gòu)件解釋器是一個軟件虛擬機,它一般包括四

解釋器模式:模型

82

解釋器模式:模型35

C/S風(fēng)格—基本概念◎C/S軟件體系結(jié)構(gòu)是基于資源不對等,且為實現(xiàn)共享而提出來的,是20世紀(jì)90年代成熟起來的技術(shù),C/S體系結(jié)構(gòu)定義了工作站如何與服務(wù)器相連,以實現(xiàn)數(shù)據(jù)和應(yīng)用分布到多個處理機上?!駽/S體系結(jié)構(gòu)有三個主要組成部分:數(shù)據(jù)庫服務(wù)器、客戶應(yīng)用程序和網(wǎng)絡(luò)。83

C/S風(fēng)格—基本概念◎C/S軟件體系結(jié)構(gòu)是基于資源不所以基于事件驅(qū)動風(fēng)格的系統(tǒng)往往都是面向?qū)ο蟮?。知識庫是倉庫系統(tǒng)的典型實例:軟件體系結(jié)構(gòu)風(fēng)格定義的主要內(nèi)涵:

倉庫系統(tǒng)及知識庫模式(2)一些相對獨立的構(gòu)件的集合:這些構(gòu)件對中央數(shù)據(jù)存儲進(jìn)行操作。讓知識源響應(yīng)偶然事件。(2)不知道哪些過程會被調(diào)用;

數(shù)據(jù)抽象和面向?qū)ο蠼M織模式實例(1)每一層都向它的上一層提供服務(wù)。

倉庫系統(tǒng)及知識庫模式

分層模式實例—計算機網(wǎng)絡(luò)的設(shè)計◎調(diào)用/返回風(fēng)格:主程序/子程序;在倉庫模式中,有兩種不同的構(gòu)件:

C/S風(fēng)格—基本概念從某種程度上來說,B/S結(jié)構(gòu)是一種全新的軟件體系結(jié)構(gòu)。

倉庫系統(tǒng)及知識庫模式(2)以圖示的方式表示構(gòu)件和構(gòu)件間的交互。

黑板模式-模型把問題分為幾個部分,每個部分獨立計算

倉庫系統(tǒng)及知識庫模式

體系結(jié)構(gòu)3.3客戶/服務(wù)器風(fēng)格84所以基于事件驅(qū)動風(fēng)格的系統(tǒng)往往都是面向?qū)ο蟮摹?/p>

體系結(jié)構(gòu)3

C/S風(fēng)格—處理流程85

C/S風(fēng)格—處理流程38

三層C/S風(fēng)格—體系結(jié)構(gòu)86

三層C/S風(fēng)格—體系結(jié)構(gòu)39

三層C/S風(fēng)格—處理流程87

三層C/S風(fēng)格—處理流程40

B/S風(fēng)格—基本概念瀏覽器/服務(wù)器(B/S)風(fēng)格就是上述三層應(yīng)用結(jié)構(gòu)的一種實現(xiàn)方式,其具體結(jié)構(gòu)為:瀏覽器/Web服務(wù)器/數(shù)據(jù)庫服務(wù)器。B/S體系結(jié)構(gòu)主要是利用不斷成熟的WWW瀏覽器技術(shù),結(jié)合瀏覽器的多種腳本語言,用通用瀏覽器就實現(xiàn)了原來需要復(fù)雜的專用軟件才能實現(xiàn)的強大功能,并節(jié)約了開發(fā)成本。從某種程度上來說,B/S結(jié)構(gòu)是一種全新的軟件體系結(jié)構(gòu)。88

B/S風(fēng)格—基本概念瀏覽器/服務(wù)器(B/S)風(fēng)格就是上

B/S風(fēng)格—體系結(jié)構(gòu)89

B/S風(fēng)格—體系結(jié)構(gòu)429043

C/S與B/S混合之查改有別模型

C/S與B/S混合之查改有別模型

C/S與B/S混合之內(nèi)外有別模型

C/S與B/S混合之內(nèi)外有別模型Thanks!END93Thanks!END46

經(jīng)典的體系結(jié)構(gòu)風(fēng)格(2)對象通過函數(shù)和過程的調(diào)用來交互的。解釋器將高級抽象層次的程序翻譯為低級抽象層次所能理解的指令,以消除在程序語言與硬件之間存在的語義差異。(4)定義對基于這種風(fēng)格的系統(tǒng)所進(jìn)行的分析。(2)一些相對獨立的構(gòu)件的集合:這些構(gòu)件對中央數(shù)據(jù)存儲進(jìn)行操作。讓知識源響應(yīng)偶然事件。軟件體系結(jié)構(gòu)風(fēng)格是描述某一特定應(yīng)用領(lǐng)域中系統(tǒng)組織方式的慣用模式。詞匯表中包含一些構(gòu)件和連接件類型。(3)許多隱式調(diào)用的系統(tǒng)也包含顯式調(diào)用作為構(gòu)件交互的補充形式。解釋器針對不同的硬件平臺實現(xiàn)了一個虛擬機。解釋器通常用在程序語言定義的計算和有效硬件操作確定的計算之間建立對應(yīng)和聯(lián)系。

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論