999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

對幾種常見軟件體系結構模型的思考

2017-02-23 14:02:14陳巖
電子技術與軟件工程 2016年24期

陳巖

本文通過介紹幾種軟件開發中常見軟件體系結構模型,以及對幾種模型進行分析比較,從而為軟件開發過程中軟件體系結構的選擇提供一些思路,并減少一些開發軟件過程中的風險。

【關鍵詞】軟件體系結構 結構模型 管道過濾器 MVC模型

計算機應用越來越廣泛和深入,計算機軟件規模和種類也變得更為復雜和多樣化。在軟件開發過程中,設計開發人員所要考慮的,不僅僅是系統的功能需求,還要更多的考慮軟件后期維護和升級等問題,因此軟件體系結構的設計選擇對于一個軟件開發過程十分重要。自軟件體系機構出現以來,其結構、模式也在不斷變化與發展,目前,有幾種比較常見的軟件體系結構模型,本文就對這幾種常見的結構模型進行介紹以及對它們進行簡單的比較分析。

1 層次體系結構模型

層次體系結構模型是一種非常常見的體系結構模型,它的基本思想是將系統在水平方向上劃分為多個抽象層次,中間層(第一層和最后一層除外)既服務于上層,又被下層服務。此外,層次之間的通信既可以相鄰層次間進行,也可以通過協議隔層進行。使用最為廣泛的分層體系結構是分層通信協議,我們常用的TCP/IP網絡就是這種模型。這種結構下,與上層的通信都依靠于每一層的一個抽象功能,低層通信定義在低層次上,一般來講,最底層與物理層次相連,其他常見的和最底層連接的有底層數據庫連接或者操作系統連接。

分層體系結構非常常見,優點也非常明顯,有以下幾點:

(1)抽象程度遞增。分層體系結構中每層的抽象程度不一樣,遞增的設計能夠使得系統的復雜程度更為容易被軟件開發設計人員理解和掌握,從而按照復雜程度分解其功能。

(2)支持系統功能增強。由于通信交互通常發生在每層和上下層之間,對于軟件的全局相對來說更容易把握,因此在面對需求變化或者軟件需要升級時,就可以通過在某一層修改功能或者增加功能來實現。

(3)支持功能復用。一般來說,對于服務接口的定義不會變,因此,不同接口實現之間交換使用就可以在同一層進行。通常,會定義一個標準接口的不同實現方法。

層次結構模型也有以下幾個缺點:

(1)更改層麻煩。修改底層對高層產生影響時,則此底層的上層都需要進行修改。

(2)效率低。層次之間的通信需要進行各種參數的傳遞與轉換;高層對于底層的一些執行并不需要等。

(3)層次的粒度難以確定。

2 管道與過濾器結構模型

過濾器為功能模塊,功能模塊之間的連接(數據流的輸入輸出)為通道,兩者共同組成了管道與過濾器結構模型。功能模塊間相互獨立,即過濾器不需要進行狀態之間的交互為管道過濾器模型的一個重要的特性,其中,若輸入輸出發生在任兩個過濾器之間則兩個過濾器可以連接使用。管道過濾器結構同時也限制了輸入輸出格式,因此在交互式應用中,這種模式是不適用的。其中,常見的管道過濾器模型應用之一就是編譯器系統。

管道過濾器模型有以下幾個優點:

(1)中間件可以不再使用,同時也支持使用中間件。

(2)靈活性增加。過濾器之間可以進行靈活的連接使用,組件的重用性提高。

(3)效率提高。可以進行并行處理。

管道與過濾器結構模型也有以下幾個缺點:

(1)信息共享問題。組件之間狀態共享信息代價較大。

(2)效率高假象。并行處理并沒有真正提高效率。

(3)數據轉換增加開銷。

3 面向對象結構模型

對于處理面向現實世界問題的系統,面向對象結構模型是最為合理的選擇。在使用面向對象的軟件中,把一切如數據、組件模塊都作為對象來處理。對象包括對象的狀態即數據以及對象的行為即操作方法,對象之間通信通過信息傳遞實現。在面向對象模型中,對用戶透明,即用戶不需要知道對象內部狀態,只需要知道功能及其使用,因而將軟件系統開發周期和難度盡量減少。

面向對象結構模型有以下優點:

(1)對象封裝。用戶不必完全了解對象的數據狀態,開發中可以減少難度和減少時間周期。

(2)對象繼承。繼承提高了為代碼的復用性,減少開發人員工作量和后期維護等工作量。

(3)錯誤修改方便。對象出現錯誤,修改此對象即可,不需要對其他對象進行修改。

面向對象結構模型有以下缺點:

(1)交互要求高。對象間進行交互通過過程調用進行,調用對象則是通過對象標識來作為通信媒介。

(2)修改繁瑣。對象通過標識符標識,若對象的標識符修改了,則必須修改對對象的所有實例,同時需要解決標識符修改帶來的副作用。

4 MVC體系結構模型

MVC體系結構(Model—Visual—Controller即模型—視圖——控制器體系結構)也是當今應用十分廣泛的交互界面結構模型。模型、視圖和控制器是MVC結構模型的三個組成部分,它強制性地將軟件的輸入輸出以及處理三個部分分開進行,每個部分相互獨立,從而使得圖形化用戶交互更為方便。比如,可以使用MVC結構模型構建拍賣系統,使得處理結果更為直觀。

MVC體系結構模型的優點如下:

(1)模式復用性。對于同一個模型,可以有多個視圖進行任務處理。同一個模式可以開發多個應用程序框架。

(2)視圖靈活。可以將視圖同步化,同時可以將視圖和控制器插入。

(3)控制器和視圖聯系緊密。

MVC體系結構模型的缺點如下:

(1)系統開發復雜性增加。同時增加了后期維護以及升級更多的更新因素。

(2)高耦合。模型、視圖和控制器之間耦合過于緊密,修改維護工作量大。

(3)效率低。視圖中的數據訪問效率較低。

5 結束語

軟件開發與以往相比,軟件算法和數據結構已經不再是最為重要的部分,軟件開發中軟件體系結構模型的選擇才是目前適應軟件開發最重要的關注點。軟件體系結構模型的選擇已經成為整個軟件系統是否能成功開發的基礎,通過軟件體系結構模型,可以對系統開發中項目可行性、開發周期、功能需求分析、項目復雜程度和風險預測等進行估計預測。從上文對層次體系結構模型、管道與過濾器結構模型、面向對象結構模型和MVC體系結構模型四種軟件體系結構模型進行簡單的總結介紹以及對其優缺點分析,可以發現每種體系結構都不可避免的在不同方面有強點或者弱點,在實際軟件開發中,需要根據項目實際情況綜合分析,從而選用恰當合理的軟件體系結構模型,使得軟件開效率和質量都有所提高。

參考文獻

[1]楊志明.幾種常見軟件體系結構模型的分析[J].計算機工程與設計,2004(08):1326-1328.

[2]田潤芙,楊旭.常見軟件體系結構分析[J].網絡財富,2010(01):160-161.

[3]侯彬,張立臣.基于中間層的軟件體系結構模型[J].電子設計工程,2010(11):1-3.

作者單位

安徽電子工程學校 安徽省蚌埠市 233010

主站蜘蛛池模板: 青青操国产| 国产一区在线观看无码| 精品久久人人爽人人玩人人妻| 狂欢视频在线观看不卡| 97色伦色在线综合视频| 色哟哟国产精品| 韩日免费小视频| 在线观看无码a∨| 国产欧美日韩视频一区二区三区| 亚洲精品日产AⅤ| 久草性视频| 色有码无码视频| 午夜欧美理论2019理论| 熟妇丰满人妻av无码区| 日本成人精品视频| 凹凸精品免费精品视频| 国产亚洲精品97AA片在线播放| 国产精品亚洲va在线观看| 中文字幕无码制服中字| 国产精品香蕉在线| 另类综合视频| 国产毛片高清一级国语| 成人毛片免费在线观看| 国产成人免费视频精品一区二区| 欧美一区日韩一区中文字幕页| 国产精品成人一区二区不卡| 中文纯内无码H| 国产日韩欧美视频| 99re热精品视频中文字幕不卡| 无码人中文字幕| 草逼视频国产| 久久一色本道亚洲| 亚洲精品午夜无码电影网| 国产青榴视频| 黄色三级网站免费| 538国产在线| 在线观看视频一区二区| 91小视频在线播放| 亚洲久悠悠色悠在线播放| 亚洲视频一区| 日韩成人午夜| 在线毛片网站| 国产精品久久国产精麻豆99网站| 婷婷在线网站| 在线日韩一区二区| 国产免费久久精品99re不卡| A级全黄试看30分钟小视频| 亚洲天堂精品视频| 国产亚洲日韩av在线| 四虎成人在线视频| 一区二区在线视频免费观看| 国产香蕉在线视频| 亚洲熟女偷拍| 天堂成人av| 午夜福利网址| 日韩精品久久无码中文字幕色欲| 999精品免费视频| 日韩欧美中文在线| 九色在线视频导航91| 成人福利在线观看| 激情乱人伦| 国产91高清视频| 成人午夜天| 国产高清自拍视频| 亚洲国产午夜精华无码福利| 日本午夜在线视频| 在线观看国产黄色| 一级毛片高清| 九色在线观看视频| 这里只有精品免费视频| 亚洲视频影院| 亚洲一区二区在线无码| 亚洲精品午夜天堂网页| 中文字幕久久波多野结衣| 伊人色天堂| 乱人伦99久久| 久爱午夜精品免费视频| 日本91在线| 香蕉视频在线精品| 天天做天天爱天天爽综合区| 97国产精品视频人人做人人爱| 极品尤物av美乳在线观看|