關(guān)于設(shè)計模式及在軟件設(shè)計中的應(yīng)用分析
關(guān)于設(shè)計模式及在軟件設(shè)計中的應(yīng)用分析
文/王飛
摘要:在我國的信息技術(shù)得到迅速的發(fā)展技術(shù)上,對于互聯(lián)網(wǎng)的設(shè)計模式也在發(fā)生著一些變化,軟件設(shè)計人員在開發(fā)的過程中所遇到的問題愈來愈多,設(shè)計模式是為了能夠?qū)υ谝欢ōh(huán)境下反復(fù)出現(xiàn)的問題得到解決而提出的方法,在軟件的開發(fā)過程中是一種解決的方案。設(shè)計模式在當(dāng)前的發(fā)展階段取得了一定的成果,但是和社會發(fā)展的需求之間還沒有達到和諧。本文主要就設(shè)計模式的相關(guān)概念進行闡述,并對其在軟件設(shè)計中的應(yīng)用進行分析,希望能夠通過此次的研究,為這一領(lǐng)域的學(xué)術(shù)發(fā)展起到一定的促進作用。
【關(guān)鍵詞】設(shè)計模式 軟件設(shè)計 應(yīng)用
在上個世紀(jì)的七十年代就已經(jīng)有學(xué)者認(rèn)為,模式是世界上特定的系統(tǒng)通用解決方案,并還提出了要將模式化語言在城市建筑領(lǐng)域進行應(yīng)用。在上世紀(jì)九十年代末期又有學(xué)者提出了面向模式的分析法以及設(shè)計的相關(guān)理論,通過模式來設(shè)計軟件西戎的體系構(gòu)架,這就為軟件的開發(fā)人員在不同軟件系統(tǒng)中能夠使用相同的體系架構(gòu)。
1 設(shè)計模式的基本概述
1.1 設(shè)計模式的基本涵義
所謂的設(shè)計模式其實就是解決某特定面向?qū)ο筌浖囊环N方法,對于這一模式它是事物同時也是對類似的事物的描述。設(shè)計模式的不同,描述的語言也會有所不同,這樣能夠更加的利于人們使用,從而實現(xiàn)資源的共享。對于模式的描述形式能夠分為形式化描述和非形式化描述,在當(dāng)前所采用的基本是非形式化的描述形式。
1.2 設(shè)計模式的類別分析
關(guān)于設(shè)計模式的分類主要能夠?qū)⑵浞譃樾袨槟J胶蛣?chuàng)建模式兩個重要的類型。行為模式在設(shè)計模式當(dāng)中有著很大的比例,它能夠?qū)τ诖蠖鄶?shù)的用戶需求得到滿足,并且對用戶的工作能夠產(chǎn)生比較大的促進作用,根據(jù)行為模式在實際當(dāng)中的應(yīng)用以及需求也能夠非分幾個不同的類型,主要是迭代器模式以及備忘錄模式。前者主要是提供方法的順序訪問聚合對象各元素,并不會對對象的內(nèi)部表示進行暴露;后者是在不破壞對象基礎(chǔ)上對對象的內(nèi)部狀態(tài)加以捕獲。
在創(chuàng)建型的模式方面其實它是在現(xiàn)階段的迅速發(fā)展社會的角度進行考慮的,在快速發(fā)展的今天,工作基本都要結(jié)合實際進行對設(shè)計模式來加以選擇,在以往的模式框架對現(xiàn)代的需求已經(jīng)不能有效的滿足,故此創(chuàng)建型的模式的發(fā)展是大勢所趨。結(jié)合實際情況來看,這一模式主要能分為單例模式和原型模式。前者主要能夠保證一類對應(yīng)一個實例并能夠?qū)υL問的全局問點進行提供;后者主要是對創(chuàng)建對象起到指定的作用,在對原型的拷貝基礎(chǔ)上進行創(chuàng)新對象。
2 設(shè)計模式的選擇以及使用分析
2.1 設(shè)計模式的選擇分析
使用正確的模式能夠給軟件的設(shè)計人員帶來很大的便利,故此想要在更大的便利上進行獲取,那么就需要對實際的模式進行正確的選擇。在模式不斷的進步,已經(jīng)有廣泛的模式跟著涌出市場,選擇的方法雖然多種多樣但是還都不是很成熟,這就需要一種能夠自動獲取的模式機制。首先要能夠?qū)栴}的需求分析有著清醒的認(rèn)識,對模式進行選擇最為基礎(chǔ)的就是問題解決的需求,故此分析問題需求才能夠有針對性的進行選擇,進而成為模式組。對于組內(nèi)的模式要進行詳細的探究,在分析的過程中能夠找到組內(nèi)模式的共性,但在模式的使用目的以及范圍不同的因素影響下所得出的結(jié)果也會有所不同。最后就是對于設(shè)計的問題要能夠充分的考慮設(shè)計模式對于問題的解決過程。通過這些就能夠有效的對設(shè)計模式進行選擇。
2.2 設(shè)計模式的使用分析
根據(jù)以上的模式選擇分析,在使用方面筆者再進行詳細的闡述。對模式首先要能夠有所了解,在適用性以及模式效果的實際情況下來進行確定使用。在模式的對象以及類和兩者的關(guān)聯(lián)性要能夠加以了解,在對其分析時研究系統(tǒng)結(jié)構(gòu)以及系統(tǒng)的內(nèi)部模塊的協(xié)作和參與者等。然后就是要研究實例代碼,并對參與者名字進行選擇,同時還要對定義好的類以及接口繼承關(guān)系得到有效的處理。對于模式的名稱定義要能夠與實際操作相關(guān)聯(lián),盡量與之相契合。3 設(shè)計模式在軟件設(shè)計中的應(yīng)用分析在對軟件的設(shè)計模式進行了選取之后,在應(yīng)用方式上要遵循規(guī)范的準(zhǔn)則,并能夠按照相應(yīng)程序來實施。例如:C# 當(dāng)中的新聞閱讀器,這一閱讀器主要是支持 RSS 以及 Atom這兩種主要的格式,在實際的教學(xué)過程中對XML 技術(shù)進行分析獲取,從而完成新聞快客賺取 RSS 格式的頻道新聞功能。但是從實際的情況來看,互聯(lián)網(wǎng)上還有著其它的新聞聚合的格式 Atom,在網(wǎng)站上也基本都會對于這兩種格式進行提供。在谷歌網(wǎng)站的新聞版塊就對Atom 這一格式的新聞訂閱支持。這就使得我們在新聞快客的領(lǐng)域也對這一格式進行支持,進而也使得我們對于這兩個重要的格式進行類的定義,根據(jù)類的不同從而創(chuàng)建實例,在常規(guī)的教學(xué)程序設(shè)計當(dāng)中可以實現(xiàn)有關(guān)的功能。在設(shè)計模式方面進行應(yīng)用將會對于這一結(jié)構(gòu)的問題更容易的得到實現(xiàn)。
另外還有簡單的工廠模式,這在比較簡單的模式,在設(shè)計模式當(dāng)中也是最為基本的一種。主要就是在特定的工廠類當(dāng)中對一些不同的方法進行定義,在這些定義的方法當(dāng)中每個都可以創(chuàng)建具體類的實例,在此類的無參工廠方法中有實例化實體類存在,就要有一個創(chuàng)建方法。它在優(yōu)勢上就是能夠在一個工廠類的管理過程中能夠涵蓋整個的應(yīng)用對象的創(chuàng)建,這在交流的能力上得到了很大程度的增強,將這一過程具體化到新聞閱讀器系統(tǒng)當(dāng)中要添加FeedFactory 類來進行創(chuàng)建不同類的實例。倘若是對其它的頻道類型進行添加的話,那么只需對這一類進行修改即可,在調(diào)用者這一方面不需要進行改變,這樣就對系統(tǒng)的維護進行了很大的簡化,在代碼的效率以及維護方面也有了很大程度的提高,維護也較為方便,并且對于調(diào)用者而言也不需要對創(chuàng)建實例對象的所屬子類進行了解。
4 結(jié)語
在新的歷史發(fā)展時期,對于設(shè)計模式的應(yīng)用已經(jīng)有了很好的成效,在諸多的方面都表現(xiàn)出較為積極的態(tài)勢。對于設(shè)計模式在軟件設(shè)計當(dāng)中的應(yīng)用還需要進一步的加以探究,要能夠建立具有針對性的預(yù)案以及實施的方案,進而促進軟件設(shè)計的效率的提高,在日后的工作當(dāng)中設(shè)計模式也將會對軟件的設(shè)計發(fā)揮更大的作用。
參考文獻
[1]李瀟.設(shè)計模式及其在軟件設(shè)計中的應(yīng)用研究 [J]. 無線互聯(lián)科技 ,2014(01).
[2]侯文.設(shè)計模式及其在軟件設(shè)計中的應(yīng)用研究 [J]. 科技致富向?qū)?nbsp;,2013(23).
作者簡介
王飛(1982-),男,河南省鄭州市人。現(xiàn)為河南省工業(yè)設(shè)計學(xué)校 教師。研究方向為計算機視覺及軟件工程。
作者單位
河南省工業(yè)設(shè)計學(xué)校 河南省鄭州市 450002
本站論文資源均為來自網(wǎng)絡(luò)轉(zhuǎn)載,免費提供給廣大作者參考,不進行任何贏利,如有版權(quán)問題,請聯(lián)系管理員刪除! 快速論文發(fā)表網(wǎng)(www.6scc.cn)本中心和國內(nèi)數(shù)百家期刊雜志社有良好的合作關(guān)系,可以幫客戶代發(fā)論文投稿.
投稿郵箱:ksfbw@126.com
客服Q Q:
82702382
聯(lián)系電話:15295038833
本站論文資源均為來自網(wǎng)絡(luò)轉(zhuǎn)載,免費提供給廣大作者參考,不進行任何贏利,如有版權(quán)問題,請聯(lián)系管理員刪除!