jsp是前端還是后端開發(fā)的煙臺seo網(wǎng)絡(luò)推廣
接前一篇文章:軟考 系統(tǒng)架構(gòu)設(shè)計(jì)師系列知識點(diǎn)之軟件架構(gòu)風(fēng)格(1)
這個(gè)十一注定是一個(gè)不能放松、保持“緊”的十一。由于報(bào)名了全國計(jì)算機(jī)技術(shù)與軟件專業(yè)技術(shù)資格(水平)考試,11月4號就要考試,因此8天長假絕不能荒廢,必須要好好利用起來?,F(xiàn)在將各個(gè)核心知識點(diǎn)一一進(jìn)行提煉并做記錄。
所屬章節(jié):
第7章. 系統(tǒng)架構(gòu)設(shè)計(jì)基礎(chǔ)知識
????????第3節(jié). 軟件架構(gòu)風(fēng)格
2. 細(xì)分
(2)調(diào)用/返回體系結(jié)構(gòu)風(fēng)格
調(diào)用/返回體系結(jié)構(gòu)風(fēng)格是指在系統(tǒng)中采用了調(diào)用與返回機(jī)制,實(shí)際上是一種分而治之的策略,其主要思想是將一個(gè)復(fù)雜的大系統(tǒng)分解為若干子系統(tǒng),以便降低復(fù)雜度,并且增加可修改性,程序從其執(zhí)行起點(diǎn)開始執(zhí)行該構(gòu)件的代碼,程序執(zhí)行結(jié)束,將控制返回給程序調(diào)用構(gòu)件。
調(diào)用/返回體系結(jié)構(gòu)風(fēng)格主要包括:
主程序/子程序風(fēng)格、面向?qū)ο箫L(fēng)格、層次結(jié)構(gòu)風(fēng)格和客戶端/服務(wù)器風(fēng)格。
- 主程序/子程序體系結(jié)構(gòu)風(fēng)格
主程序/子程序風(fēng)格一般采用單線程控制,把問題劃分為若干處理步驟。
主程序/子程序風(fēng)格的構(gòu)件即為主程序和子程序,子程序通常可合成為模塊。過程調(diào)用作為交互機(jī)制,即充當(dāng)連接件。調(diào)用關(guān)系具有層次性,其語義邏輯表現(xiàn)為子程序的正確性取決于它調(diào)用的子程序的正確性。
- 面向?qū)ο篌w系結(jié)構(gòu)風(fēng)格
面向?qū)ο篌w系結(jié)構(gòu)風(fēng)格建立在數(shù)據(jù)抽象和面向?qū)ο?/strong>的基礎(chǔ)上。數(shù)據(jù)的表示方法和它們的相應(yīng)操作封裝在一個(gè)抽象數(shù)據(jù)類型或?qū)ο笾小?/p>
面向?qū)ο篌w系結(jié)構(gòu)風(fēng)格的構(gòu)件是對象,或者說是抽象數(shù)據(jù)類型的實(shí)例。與主程序/子程序體系結(jié)構(gòu)風(fēng)格一樣,連接件為過程調(diào)用機(jī)制。 層次系統(tǒng)組成一個(gè)層次結(jié)構(gòu),每一層為上層提供服務(wù),并作為下層的客戶。在一些層次系統(tǒng)中,除了一些精心挑選的輸出函數(shù)外,內(nèi)部的層接口只對相鄰的層可見。這樣的系統(tǒng)中構(gòu)件在層上實(shí)現(xiàn)了虛擬機(jī)。連接件由通過決定層間如何交互的協(xié)議來定義,拓?fù)浼s束包括對相鄰層間交互的約束。由于每一層最多只影響兩層,同時(shí)只要給相鄰層提供相同的接口,允許每層用不同的方法實(shí)現(xiàn),這同樣為軟件重用提供了強(qiáng)大的支持。 客戶端/服務(wù)器(C/S)軟件體系結(jié)構(gòu)是基于資源不對等、且為實(shí)現(xiàn)共享而提出的。兩層C/S體系結(jié)構(gòu)有3個(gè)主要組成部分:數(shù)據(jù)庫服務(wù)器、客戶應(yīng)用程序和網(wǎng)絡(luò)。服務(wù)器(后臺)負(fù)責(zé)數(shù)據(jù)管理,客戶機(jī)(前臺)完成與用戶的交互任務(wù),稱為“胖客戶機(jī),瘦服務(wù)器”。 三層C/S體系結(jié)構(gòu)增加了一個(gè)應(yīng)用服務(wù)器。整個(gè)應(yīng)用邏輯駐留在應(yīng)用服務(wù)器上,只有表示層存在于客戶機(jī)上,故稱為“瘦客戶機(jī)”。應(yīng)用功能分為表示層、功能層和數(shù)據(jù)層三層。表示層是應(yīng)用的用戶接口部分,通常使用圖形用戶界面;功能層是應(yīng)用的主體,實(shí)現(xiàn)具體的業(yè)務(wù)處理邏輯;數(shù)據(jù)層是據(jù)庫管理系統(tǒng)。