版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、復(fù)旦大學(xué)碩士學(xué)位論文針對(duì)代碼克隆的面向?qū)ο蟪绦虻闹貥?gòu)研究姓名:朱圣松申請(qǐng)學(xué)位級(jí)別:碩士專業(yè):計(jì)算機(jī)軟件與理論指導(dǎo)教師:錢樂秋20070501針對(duì)代碼克隆的面向?qū)ο蟪绦虻闹貥?gòu)研究【摘要】軟件重構(gòu)是軟件工程的一個(gè)重要研究領(lǐng)域,是當(dāng)前軟件工程界的一個(gè)重要研究課題。通過軟件重構(gòu),人們可以去除軟件中的不良設(shè)計(jì),改進(jìn)軟件質(zhì)量。代碼克隆是軟件源程序中普遍存在的一個(gè)問題,一個(gè)軟件中往往存在著很多相同或基本相似的代碼片段。代碼克隆不利于軟件的維護(hù)及更新,
2、因?yàn)榧偃缬幸惶幮枰薷?,其他克隆之處都要作相?yīng)修改。由于代碼克隆存在這種負(fù)面影響,我們有必要針對(duì)代碼克隆進(jìn)行軟件重構(gòu)。針對(duì)代碼克隆的軟件重構(gòu)研究主要包括克隆的度量、檢測(cè)及消除。其目的就是盡可能全面地找出源程序中的代碼克隆,并根據(jù)不同的克隆情況采取最合理的消除措施,以得到最優(yōu)的重構(gòu)效果本文從代碼克隆出發(fā),以Java語言為例,討論面向?qū)ο蟪绦蛑嗅槍?duì)代碼克隆的重構(gòu)方法本文首先用基于編輯距離的相似度來度量代碼克隆,即通過計(jì)算兩個(gè)代碼片段對(duì)應(yīng)的標(biāo)
3、符序列的編輯距離,并求出其相似度來判斷是否克隆。本文接著討論源程序中的克隆檢測(cè),詳細(xì)闡述克隆檢測(cè)的各個(gè)步驟,包括確定代碼片段、生成標(biāo)符序列、計(jì)算編輯距離及相似度。本文同時(shí)考慮了滿足語義邏輯等價(jià)性的代碼克隆,即將形式上不相似但邏輯上等價(jià)的代碼片段也視為克隆,本文使用程序邏輯圖來判斷邏輯等價(jià)性。本文最后針對(duì)不同的克隆情況實(shí)行不同的消除克隆方法以實(shí)現(xiàn)最有效的重構(gòu)。【關(guān)鍵字】軟件重構(gòu),代碼克隆,克隆度量,克隆檢測(cè),克隆消除【中圖分類號(hào)】TP31
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 克隆代碼的識(shí)別與重構(gòu).pdf
- 可重構(gòu)克隆代碼的過程提取方法研究.pdf
- 面向?qū)ο蟮某绦蛟O(shè)計(jì)
- 面向并發(fā)的程序重構(gòu)技術(shù)研究.pdf
- 面向?qū)ο蟪绦蛟O(shè)計(jì)的概念
- 用面向?qū)ο蠹夹g(shù)重構(gòu)遺留系統(tǒng)的方法研究.pdf
- 課題面向?qū)ο蟮某绦蛟O(shè)計(jì)
- 面向?qū)ο蟮恼Z言程序設(shè)計(jì)
- 面向?qū)ο蟪绦虻闹赶蚍治黾夹g(shù)研究.pdf
- 基于K-最近鄰的C克隆代碼重構(gòu)方法研究.pdf
- 《面向?qū)ο蟪绦蛟O(shè)計(jì)》
- 結(jié)合動(dòng)態(tài)測(cè)試和靜態(tài)分析的克隆代碼重構(gòu).pdf
- 面向?qū)ο蟪绦虻葍r(jià)轉(zhuǎn)換技術(shù)的研究與應(yīng)用.pdf
- 面向?qū)ο蟪绦騽?dòng)態(tài)切片系統(tǒng)的研究與實(shí)現(xiàn).pdf
- 結(jié)合程序切片技術(shù)的并行面向?qū)ο蟪绦蚰P蜋z查.pdf
- 面向?qū)ο蟮目芍貥?gòu)FMS控制系統(tǒng)的研究與開發(fā).pdf
- 基于模型的面向?qū)ο蟪绦蜃詣?dòng)裁剪方法研究.pdf
- 面向?qū)ο蟪绦蚯衅蓄悓哟螆D的研究.pdf
- 面向Python程序源代碼的分析與編譯優(yōu)化研究.pdf
- 面向?qū)ο蟮挠邢拊绦蛟O(shè)計(jì).pdf
評(píng)論
0/150
提交評(píng)論