freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

軟件體系結(jié)構(gòu)與設(shè)計模式概述-全文預(yù)覽

2025-03-12 17:05 上一頁面

下一頁面
  

【正文】 系統(tǒng)結(jié)構(gòu) ? 當(dāng)前主流的分布式對象技術(shù)規(guī)范有 OMG的 CORBA、Microsoft公司的 .NET和 Sun公司的 J2EE。 ? 分布式對象技術(shù)的基礎(chǔ)是構(gòu)件。為了消除客戶機(jī)與服務(wù)器之間的差別,提高系統(tǒng)的伸 縮性以及有效地均衡負(fù)載,可采用分布式對象體系結(jié)構(gòu)來 設(shè)計系統(tǒng)。 ( 1) B/S體系結(jié)構(gòu)缺乏對動態(tài)頁面的支持能力,沒有集成 有效的數(shù)據(jù)庫處理功能。從某種程度上來說, B/S結(jié)構(gòu)是一種全新的軟件體系結(jié)構(gòu)。 ( 3) 數(shù)據(jù)層 :數(shù)據(jù)層主要包括數(shù)據(jù)的存儲及對數(shù)據(jù)的存取 操作,一般選擇關(guān)系型數(shù)據(jù)庫管理系統(tǒng)( RDBMS)。 分布式系統(tǒng)結(jié)構(gòu) 分布式系統(tǒng)結(jié)構(gòu) ( 1) 表示層 :表示層是應(yīng)用系統(tǒng)的用戶界面部分,擔(dān)負(fù)著 用戶與應(yīng)用程序之間的對話功能。 分布式系統(tǒng)結(jié)構(gòu) 為了解決以上問題, 三層 C/S體系結(jié)構(gòu) 應(yīng)運(yùn)而生。但另一方面,隨著企業(yè)規(guī)模的 日益擴(kuò)大,軟件的復(fù)雜程度不斷提高,胖客戶機(jī)模型逐漸 暴露出了以下缺點: ? 開發(fā)成本較高。 分布式系統(tǒng)結(jié)構(gòu) ( 2) 胖客戶機(jī)模型 。 兩層 C/S體系結(jié)構(gòu)可以有兩種形態(tài): ( 1) 瘦客戶機(jī)模型 。 在 C/S體系結(jié)構(gòu)中 , 客戶機(jī)可以通過遠(yuǎn)程調(diào)用來獲取服 務(wù)器提供的服務(wù) , 因此 , 客戶機(jī)必須知道可用的服務(wù)器的 名字及它們所提供的服務(wù) , 而服務(wù)器不需要知道客戶機(jī)的 身份 , 也不需要知道有多少臺服務(wù)器在運(yùn)行 。 由于大型實時系統(tǒng)對響應(yīng)時間要求較高,這種模型在大型 實時系統(tǒng)中比較常見。 (3) 性能與可擴(kuò)展性。個人計算機(jī)和工作站的采用,永遠(yuǎn)改變了大型機(jī) /小型機(jī)計算模型,從而產(chǎn)生了分布式計算模型。 ? 區(qū)別之一是類屬模型可以直接在設(shè)計中復(fù)用,而參考模型一般是用于領(lǐng)域概念間的交流和對可能的體系結(jié)構(gòu)做出比較。 ? 參考模型源于對應(yīng)用領(lǐng)域的研究 , 它 描述了一個理想化的包含了系統(tǒng)應(yīng)具有的所有特征的軟件體系結(jié)構(gòu) 。 ? 有兩種領(lǐng)域相關(guān)的體系結(jié)構(gòu)模型: 類屬模型( generic model)和 參考模型 ( reference model)。黑板系統(tǒng) 的傳統(tǒng)應(yīng)用是信號處理領(lǐng)域,如語音和模式識別。 在這種風(fēng)格中 , 數(shù)據(jù) 倉庫 ( 如文件或數(shù)據(jù)庫 ) 位于這種體系結(jié)構(gòu)的中心 , 其他構(gòu)件會經(jīng)常訪問該數(shù) 據(jù)倉庫 , 并對倉庫中的數(shù) 據(jù)進(jìn)行增加 、 修改或刪除 操作 。這樣,就可以定義一組標(biāo)準(zhǔn) 的接口,從而允許各種不同的實現(xiàn)方法。 層次結(jié)構(gòu)具有以下 優(yōu)點 : ( 1)支持基于抽象程度遞增的系統(tǒng)設(shè)計,使設(shè)計者可以把 一個復(fù)雜系統(tǒng)按遞增的步驟進(jìn)行分解。在這種體系結(jié)構(gòu)中,整 個系統(tǒng)被組織成一個分層結(jié)構(gòu),每一層為上層提供服務(wù),并 作為下一層的客戶。只要一個對象的標(biāo)識 改變了,就必須修改所有其他明確調(diào)用它的對象。面向?qū)ο箫L(fēng)格與網(wǎng)絡(luò)應(yīng)用的需求在分布性、自治性、 協(xié)作性、演化性等方面具有內(nèi)在的一致性。 ( 2)子系統(tǒng)的結(jié)構(gòu)不清晰?;诙x — 使用關(guān)系對子 程序進(jìn)行分解,使用過程調(diào)用作為程序之間的交互機(jī)制。 典型的體系結(jié)構(gòu)風(fēng)格 在此類體系結(jié)構(gòu)中,存在以下 3種子風(fēng)格。這是因為雖然過濾 器可增量式地處理數(shù)據(jù),但它們是獨立的,所以設(shè)計者必須 將每個過濾器看成一個完整的從輸入到輸出的轉(zhuǎn)換。 ( 5)允許對一些如吞吐量、死鎖等屬性的分析。 ( 3)支持軟件復(fù)用。 如果數(shù)據(jù)流退化成為單線的變換 , 則稱為 批處理序列( batch sequential) 。 管道 /過濾器 、 批處理序 列 都屬于數(shù)據(jù)流風(fēng)格。 體系結(jié)構(gòu)的重要作用體現(xiàn)在以下三個方面 : ( 1)體系結(jié)構(gòu)的表示有助于風(fēng)險承擔(dān)者(項目干系 人)進(jìn)行交流。 軟件體系結(jié)構(gòu)的基本概念 軟件體系結(jié)構(gòu)的基本概念 3.框架 隨著應(yīng)用的發(fā)展和完善,某些帶有整體性的應(yīng)用模式被 逐漸固定下來,形成特定的框架,包括 基本構(gòu)成元素 和 關(guān) 系 。 軟件體系結(jié)構(gòu)的基本概念 體系結(jié)構(gòu)風(fēng)格定義了一個系統(tǒng)家族,即 一個體系結(jié)構(gòu)定 義一個詞匯表和一組約束 。 ( 3) 慣用法 ( idiom):是與編程語言相關(guān)的低級模式, 描述如何實現(xiàn)構(gòu)件的某些功能,或者利用編程語言的特性 來實現(xiàn)構(gòu)件內(nèi)部要素之間的通信功能。 ( 1) 體系結(jié)構(gòu)模式 ( architectural pattern):表達(dá)了軟 件系統(tǒng)的基本結(jié)構(gòu)組織形式或者結(jié)構(gòu)方案,包含了一組預(yù) 定義的子系統(tǒng),規(guī)定了這些子系統(tǒng)的責(zé)任,同時還提供了 用于組織和管理這些子系統(tǒng)的規(guī)則和向?qū)АT隗w系結(jié)構(gòu)設(shè)計中所強(qiáng) 調(diào)的基本原理是系統(tǒng)的可理解性、可維護(hù)性和可擴(kuò)展性。處理構(gòu)件負(fù)責(zé)對數(shù)據(jù)進(jìn) 行加工,數(shù)據(jù)構(gòu)件是被加工的信息,連接構(gòu)件把體系結(jié)構(gòu)的 不同部分組合連接起來。結(jié)構(gòu)中 包括軟件的構(gòu)件、構(gòu)件的外部可見屬性以及它們之間的相互 關(guān)系。 Bass、 Clements和 Kazman給出了如下定義:“一個程序或計算機(jī) 系統(tǒng)的軟件體系結(jié)構(gòu)是指 系統(tǒng)的一個或者多個結(jié)構(gòu)。 Dewayne Perry和 A1exander Wo1f曾這樣定義:“ 軟件 體系結(jié)構(gòu)是具有一定形式的結(jié)構(gòu)化元素,即構(gòu)件的集合,包 括處理構(gòu)件、數(shù)據(jù)構(gòu)件和連接構(gòu)件。 體系結(jié)構(gòu)設(shè)計是一系列 決策和基本原理的集合 ,這些決策的 目標(biāo)在于開發(fā)高效的軟件體系結(jié)構(gòu)。在軟件系統(tǒng)中,可 以將模式劃分為以下 3類。有代表性的設(shè) 計模式是 Erich Gamma及其同事提出的 23種設(shè)計模式 。 每種風(fēng)格描述 一種系統(tǒng)范疇 ,該范疇包括: ( 1) 一組構(gòu)件 (如數(shù)據(jù)庫、計算模塊)完成系統(tǒng)需要的某 種功能; ( 2) 一組連接件 ,它們能使構(gòu)件間實現(xiàn)“通信”、“合作”和 “協(xié)調(diào)”; ( 3) 約束 ,定義構(gòu)件如何集成為一個系統(tǒng); ( 4) 語義模型 ,它能使設(shè)計者通過分析系統(tǒng)的構(gòu)成成分的 性質(zhì)來理解系統(tǒng)的整體性質(zhì)。 對體系結(jié)構(gòu)風(fēng)格的研究和實踐為大粒度的軟件復(fù)用提供 了可能。典型的框架例子有 MFC框 架 和 Struts框架 。 軟件體系結(jié)構(gòu)的基本概念 ? 體系結(jié)構(gòu)的重要作用 當(dāng)輸入數(shù)據(jù)經(jīng)過一系列的計算和操作構(gòu)件的變換形成輸出 數(shù)據(jù)時,可以應(yīng)用這種體系結(jié)構(gòu)。 每個過濾器獨立于其上游和下游的構(gòu)件而工作 , 過濾器的設(shè)計要針對某種形式的數(shù)據(jù)輸入 , 并且產(chǎn)生某種特定形式的數(shù)據(jù)輸出 。 ( 2)允許設(shè)計者將整個系統(tǒng)的輸入 /輸出行為看成是多個過 濾器的行為的簡單合成。新的過濾器可以添加 到現(xiàn)有系統(tǒng)中來;舊的可以被改進(jìn)的過濾器替換掉。 典型的體系結(jié)構(gòu)風(fēng)格 管道 /過濾器風(fēng)格 主要 缺點 如下: ( 1)通常導(dǎo)致進(jìn)程成為批處理的結(jié)構(gòu)。 ( 3)因為在數(shù)據(jù)傳輸上沒有通用的標(biāo)準(zhǔn),每個過濾器都增 加了解析和合成數(shù)據(jù)的工作,這樣就導(dǎo)致了系統(tǒng)性能下降, 并增加了編寫過濾器的復(fù)雜性。 典型的體系結(jié)構(gòu)風(fēng)格 ? 調(diào)用 — 返回風(fēng)格 主程序 /子程序體系結(jié)構(gòu)的 優(yōu)點 如下 : ( 1)可以使用自頂向下,逐步分解的方法得到體系結(jié)構(gòu) 圖,典型的拓?fù)浣Y(jié)構(gòu)為樹狀結(jié)構(gòu)。需要運(yùn)用層次推理來判斷 子程序的正確性,因為子程序的正確性取決于它調(diào)用的子程 序的正確性。與主程序 /子程 序的體系結(jié)構(gòu)相比,面向?qū)ο箫L(fēng)格中的對象交互會復(fù)雜一 些。 典型的體系結(jié)構(gòu)風(fēng)格 其 缺點 如下 : ( 1)為了使一個對象和另一個對象通過過程調(diào)用等進(jìn)行 交互,必須知道對象的標(biāo)識。 典型的體系結(jié)構(gòu)風(fēng)格 3.層次結(jié)構(gòu)
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1