色噜噜人体337p人体 I 超碰97观看 I 91久久香蕉国产日韩欧美9色 I 色婷婷我要去我去也 I 日本午夜a I 国产av高清怡春院 I 桃色精品 I 91香蕉国产 I 另类小说第一页 I 日操夜夜操 I 久久性色 I 日韩欧在线 I 国产深夜在线观看 I 免费的av I 18在线观看视频 I 他也色在线视频 I 亚洲熟女中文字幕男人总站 I 亚洲国产综合精品中文第一 I 人妻丰满熟av无码区hd I 新黄色网址 I 国产精品真实灌醉女在线播放 I 欧美巨大荫蒂茸毛毛人妖 I 国产一区欧美 I 欧洲亚洲1卡二卡三卡2021 I 国产亚洲欧美在线观看三区 I 97精品无人区乱码在线观看 I 欧美妇人 I 96精品在线视频 I 国产人免费视频在线观看 I 91麻豆国产福利在线观看

基于軟件開發下外觀模式的改進研究論文

時間:2021-04-16 14:22:59 論文 我要投稿

基于軟件開發下外觀模式的改進研究論文

  外觀模式是使用頻率較高的軟件設計模式之一。針對標準外觀模式所存在的問題,本文提出了兩種外觀模式改進方案并結合實例進行研究。通過引入抽象外觀類,讓系統具有良好的可擴展性,滿足開閉原則;通過對外觀類實施單例化,可以確保外觀對象的唯一性,節約系統資源。

基于軟件開發下外觀模式的改進研究論文

  1 引言

  設計模式在軟件開發中應用日益廣泛,它們是前人經驗的總結與積累,每一種模式均是在多個軟件項目中被反復使用、被多數人知曉,且經過規范的分類編目和整理的面向對象設計經驗的總結。

  外觀模式是使用頻率較高的軟件設計模式之一,在軟件開發中應用非常廣泛。根據單一職責原則,將一個大的軟件模塊(或子系統)進行分解可以降低整個系統的復雜性,提高單個模塊(或子系統)的'獨立性和可復用性。通過引入外觀角色,可以降低客戶類與子系統類之間的耦合度,使之相互依賴關系降至最小,從而降低原有系統的復雜度。在沒有外觀角色的系統中,客戶類需要與多個子系統類進行交互,系統耦合度較高;在引入外觀角色之后,客戶類只需要與外觀類交互,再通過外觀類間接調用子系統類,在外觀類中封裝了與子系統之間的復雜交互關系,從而降低系統的耦合度。

  但是,在標準的外觀模式中存在兩個問題:首先,標準外觀模式沒有提供抽象層,在增加、更換或者刪除子系統類時需要修改客戶類或者外觀類的源代碼,違背了開閉原則;其次,外觀類維持了對多個子系統類的引用,在系統運行時,外觀對象勢必會占用較多的系統資源,需要對外觀對象的數量進行限制。

  2 外觀模式的改進方案

  針對標準外觀模式存在的問題和缺陷,本文提出了相應的改進方案,包括引入抽象外觀類以及對外觀類實施單例化。

  2.1 抽象外觀類的引入

  為了讓外觀模式能夠符合開閉原則,引入抽象外觀類來對外觀模式進行抽象化改進。客戶端針對抽象外觀類進行編程,將所有的具體外觀類作為抽象外觀類的子類,如果需要更改業務需求,無須修改原有外觀類,只需要增加一個新的具體外觀類即可,由新的外觀類來關聯新的業務需求。通過使用配置文件,可以達到不修改任何源代碼即可置換外觀類的目的,如圖1所示。

  2.2 外觀類的單例化

  在大多數情況下,為了節約系統資源,程序在運行時只需創建某個外觀類的唯一實例。因此,可以將外觀模式與單例模式聯用,對外觀類實施單例化,確保系統中只存在唯一一個外觀對象并提供唯一的訪問入口,可以降低系統資源的消耗。單例化后的外觀類的結構如圖2所示。

  在圖2中,外觀類Facade被設計為單例類,在其中定義了一個靜態的Facade類型的成員變量instance,其構造函數為私有的(private),并通過一個靜態的公有工廠方法getInstance()返回自己的唯一實例。

  3 實例研究

  下面通過一個實例來說明如何在實際項目中使用改進后的外觀模式。

  在某使用外觀模式的文件加密模塊的初始設計方案中,FileReader類用于讀取待加密的源文件、FileWriter類用于保存加密之后的文件、Cipher類用于實現數據的加密,EncryptFacade是一個加密外觀類,它通過調用三個業務類中的方法實現文件讀取、加密和保存的完整流程。

  3.1 抽象化改進

  如果需要將原系統中的加密類Cipher改為NewCipher,勢必會導致外觀類EncryptFacade源代碼發生修改,違背開閉原則。通過引入抽象外觀類,重構后的系統設計方案如圖3所示,在圖3中使用了基于衍型的模式標注方法SBPN (Stereotype Based Pattern Notation)來對結構圖中的設計模式信息進行標注。

  在圖3中,客戶類Client針對抽象外觀類AbstractEncryptFacade進行編程,可將具體外觀類類名存儲在XML等格式的配置文件中,更換具體外觀類時只需修改配置文件,無須修改源代碼,符合開閉原則。

  3.2 單例化改進

  為了節省系統資源,可以將EncryptFacade設計為單例類,改進之后的結構如圖4所示。

  通過對外觀類實施單例化,可以確保系統中有且僅有一個EncryptFacade類的實例,避免生成多個EncryptFacade對象,節約系統資源。

  4 結束語

  外觀模式是一種使用頻率非常高的設計模式,在軟件開發中應用廣泛。針對標準外觀模式存在的不足,本文提出了兩種外觀模式的改進方案:第一種方案通過引入抽象外觀類,使得系統在增加、刪除或者更換子系統類時無須修改已有類的源代碼,可以對抽象外觀類進行擴展來適應設計方案的改變,讓系統滿足開閉原則;第二種方案通過對外觀類單例化,將外觀模式與單例模式聯用,確保在系統中只存在外觀類的唯一實例,節約系統資源。通過上述改進,可以提高外觀模式的適用性和有效性。

【基于軟件開發下外觀模式的改進研究論文】相關文章:

基于土工實驗教學模式的研究論文01-27

基于網絡包裝技術下軟件開發的遠程監控系統研究論文10-31

基于Android平臺軟件開發技術研究論文11-07

基于Maven的輕量級Java軟件開發研究論文11-02

基于CMMI的軟件開發模型應用研究論文11-04

基于權力話語理論下的翻譯策略研究論文11-01

卷煙機下煙通道的改進方式研究的論文11-01

新課程理念下的體育教學模式研究論文01-26

高職下慕課項目教學模式研究論文07-30

主站蜘蛛池模板: 一本色道av久久精品 | 希岛爱理aⅴ在线中文字幕 少妇精品 | 在线啊 | 情侣做性视频在线播放 | 亚洲黄色一级网站 | 超碰97人人人人人蜜桃 | 色偷偷av一区二区 | 五级黄高潮片90分钟视频 | 精品一个色 | 午夜影院在线观看 | 国产成人a人亚洲精品无码 亚洲精品视频免费看 | 日日夜夜网站 | 狠狠操天天操 | 黄瓜视频在线观看网址 | 亚洲蜜桃v妇女 | 日韩 亚洲 欧美 国产 精品 | 日韩精品无码免费毛片 | 青青草成人免费视频在线观看 | 国产后进白嫩翘臀在线播放 | 无码高潮爽到爆的喷水视频app | 色婷婷免费视频 | 日本波多野结衣在线 | 四虎永久在线精品免费播放 | 无码一区二区波多野结衣播放搜索 | 凹凸日日摸日日碰夜夜爽1 无码一区二区三区中文字幕 | 久久精品国产99久久丝袜 | 无套内谢丰满少妇中文字幕 | 国产在线无码一区二区三区视频 | 青青草原播放器 | 中文字幕乱偷在线小说 | 思思久久96热在精品国产 | 青青草激情视频 | 亚洲国产精品av在线播放 | 日韩视频免费观看高清 | 77777五月色婷婷丁香视频 | 在线人人车操人人看视频 | 日韩欧美www| 成人国内精品久久久久一区 | 免费特级黄毛片 | 丰满少妇裸体淫交 | 欧美小视频在线 | 免费人妻av无码专区 | 免费观看网站黄 | 91在线| 中文字幕无码热在线视频 | 国产精品亚洲а∨天堂123 | 精品一区中文字幕 | 久久人人爽人人 | 91在线高清 | 日韩免费无码成人久久久久久片 | 色欲av巨乳无码一区二区 | 欧美福利二区 | 久久爱www | 97伦伦午夜电影理伦片 | 日韩视频导航 | 扒开双腿吃奶呻吟做受视频 | 久久久免费少妇高潮毛片 | 精品久久久久久久久久国产潘金莲 | 中文字幕无码家庭乱欲 | 二区三区免费视频 | 97熟女毛毛多熟妇人妻aⅴ | 国产久免费热视频在线观看 | 国产成+人+综合+亚洲 欧美 | 久草在线视频免费播放 | 国产精品久久免费 | 亚洲精品一区二区在线观看 | 黄色毛片三级 | 国产精品高潮呻吟久久av野狼 | 亚洲视频三区 | av女优在线观看网站 | 国产一区二区三区久久久久久 | 日韩在线观看视频免费 | 神马影院一区二区三区 | 天天夜夜爽| 最新久久免费视频 | 欧美激情在线看 | 亚洲综合中文字幕在线 | 欧美成人无尺码免费视频软件 | 12裸体自慰免费观看网站 | 亚洲国产拍拍拍拍久久久 | www.狠狠| 亚洲小视频在线 | 日本巨大的奶头在线观看 | 777久久精品一区二区三区无码 | 久久久久久久av麻豆果冻 | 亚洲 欧美 另类图片 | www.四色 | 亚洲精品专区成人网站 | 欧美日韩精品一区二区三区四区 | 精品久久久久久中文字幕大豆网 | 亚洲精品国产一区黑色丝袜 | 国产在线看片免费观看 | 成人精品毛片va一区二区三区 | 欧美成人看片一区二三区图文 | 热99在线| 国产私人影院 | av女优天堂 | 裸体广场舞av一区三区 | 亚洲午夜久久久久久噜噜噜 |