[發(fā)明專利]一種基于模板的軟件設(shè)計模式重構(gòu)方法在審
| 申請?zhí)枺?/td> | 201810359740.2 | 申請日: | 2018-04-20 |
| 公開(公告)號: | CN108804078A | 公開(公告)日: | 2018-11-13 |
| 發(fā)明(設(shè)計)人: | 俞東進;張萍;王琳;楊加柞 | 申請(專利權(quán))人: | 杭州電子科技大學(xué) |
| 主分類號: | G06F8/20 | 分類號: | G06F8/20;G06F8/72 |
| 代理公司: | 杭州君度專利代理事務(wù)所(特殊普通合伙) 33240 | 代理人: | 朱月芬 |
| 地址: | 310018 浙*** | 國省代碼: | 浙江;33 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 重構(gòu) 設(shè)計模式 軟件設(shè)計模式 代碼轉(zhuǎn)換 工具生成 關(guān)鍵信息 實例代碼 用戶需求 源碼信息 定制化 智能化 重構(gòu)的 書寫 轉(zhuǎn)換 開發(fā) | ||
本發(fā)明公開了一種基于模板的軟件設(shè)計模式重構(gòu)方法,本發(fā)明先選取需要重構(gòu)的某一個具體設(shè)計模式實例,使用Enterprise Architect工具將代碼轉(zhuǎn)換為XML文件,再提取XML文件中包含的類的關(guān)鍵信息,形成新的XML文件;根據(jù)為每種設(shè)計模式定制化的重構(gòu)模板,采用XSLT轉(zhuǎn)換技術(shù)針對用戶需求對新的XML文件進行相應(yīng)的組合重構(gòu)操作,從而將新的XML文件轉(zhuǎn)換成重構(gòu)后的XML文件;最后對重構(gòu)后的XML文件,利用Enterprise Architect工具生成對應(yīng)的源碼信息,獲得重構(gòu)后的設(shè)計模式實例代碼。本發(fā)明不僅可以滿足不同用戶的需求,同時生成的代碼也會給開發(fā)人員書寫代碼智能化提供方便。
技術(shù)領(lǐng)域
本發(fā)明屬于軟件工程領(lǐng)域,具體涉及一種基于模板的軟件設(shè)計模式重構(gòu)方法。
背景技術(shù)
目前,軟件行業(yè)已經(jīng)成為世界上最大的行業(yè),軟件已經(jīng)成為與所有基于技術(shù)與基于服務(wù)的企業(yè)運轉(zhuǎn)息息相關(guān)的一部分。但隨著業(yè)務(wù)規(guī)模和需求的不斷擴大,軟件系統(tǒng)的維護、修改及擴展變得日益復(fù)雜。通過對設(shè)計模式進行重構(gòu),可以幫助開發(fā)人員提高重構(gòu)效率,高效生成相應(yīng)設(shè)計模式的代碼,減少重復(fù)工作量和出錯的可能性。因此,如何基于設(shè)計模式對軟件系統(tǒng)進行重構(gòu),對于有效的程序理解和重用、并最終提高軟件設(shè)計質(zhì)量具有重要意義。
目前,開發(fā)人員越來越認識到重構(gòu)的重要性,針對系統(tǒng)重構(gòu)的研究工作正在陸續(xù)開展中,并取得重要成果。但是,專門針對基于設(shè)計模式的代碼重構(gòu)研究工作還相對較少,主要是因為設(shè)計模式本身的規(guī)定并不明確,同時也存在設(shè)計模式變體,從而限制了設(shè)計模式重構(gòu)的發(fā)展。所以,目前大多數(shù)只針對特定的一種或者幾種設(shè)計模式進行挖掘,工具適用范圍較小,不能滿足人們的需求。
發(fā)明內(nèi)容
本發(fā)明針對現(xiàn)有技術(shù)的不足,提供了一種基于模板的軟件設(shè)計模式重構(gòu)方法。
本發(fā)明方法的具體步驟是:
步驟1.選取需要重構(gòu)的某一個具體設(shè)計模式實例,使用Enterprise Architect工具將代碼轉(zhuǎn)換為XML文件,再提取XML文件中包含的類的關(guān)鍵信息,形成新的XML文件,所述的類的關(guān)鍵信息包括類名、屬性名、方法名、類之間的關(guān)系;
步驟2.根據(jù)為每種設(shè)計模式定制化的重構(gòu)模板,采用XSLT轉(zhuǎn)換技術(shù)針對用戶需求對新的XML文件進行相應(yīng)的組合重構(gòu)操作,從而將新的XML文件轉(zhuǎn)換成重構(gòu)后的XML文件;
其中,步驟2所述的組合重構(gòu)操作進一步包括如下步驟(1)至(6):
步驟(1)檢查對重構(gòu)模板施加獨立型組合操作還是關(guān)聯(lián)型組合操作,如是獨立型組合操作則進行下一步,若是關(guān)聯(lián)型組合操作則轉(zhuǎn)到步驟(4);
步驟(2)檢查是否只有獨立類,如是則提供相應(yīng)的類名、父類名、類之間的關(guān)系,轉(zhuǎn)到步驟3,所述的獨立類表示添加或者刪除該類對第三個類沒有影響的類;
步驟(3)檢查除獨立類外是否有屬性或方法的加入,若是有獨立類和屬性,則提供屬性名、類名、類之間的關(guān)系;若是有獨立類和方法,則提供方法名、類名、類之間的關(guān)系;若是有獨立類、屬性和方法,則提供相應(yīng)的屬性名或方法名、類名、類之間的關(guān)系,轉(zhuǎn)到步驟3;
步驟(4)檢查是否只有關(guān)聯(lián)類,如是則提供相應(yīng)的類名、關(guān)聯(lián)類名、類之間的關(guān)系,轉(zhuǎn)到步驟3;所述的關(guān)聯(lián)類表示添加或者刪除一個類會對第三個類造成影響的類;
步驟(5)檢查是否有關(guān)聯(lián)類和關(guān)聯(lián)方法,如是則提供相應(yīng)的方法名、類名、關(guān)聯(lián)類名,轉(zhuǎn)到步驟3;
步驟(6)檢查是否有關(guān)聯(lián)類和關(guān)聯(lián)屬性,如是則提供相應(yīng)的屬性名、類名、關(guān)聯(lián)類名、類之間的關(guān)系;
步驟3.對重構(gòu)后的XML文件,利用Enterprise Architect工具生成對應(yīng)的源碼信息,獲得重構(gòu)后的設(shè)計模式實例代碼。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于杭州電子科技大學(xué),未經(jīng)杭州電子科技大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810359740.2/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 一種頻譜重構(gòu)的確定方法及系統(tǒng)
- 一種提高基于糾刪碼的存儲集群恢復(fù)性能的方法
- 界面可重構(gòu)的虛擬應(yīng)用系統(tǒng)和方法
- 一種運行時動態(tài)請求可重構(gòu)核的優(yōu)化方法
- 低代價高可靠的星載單機多片SRAM型FPGA在軌重構(gòu)系統(tǒng)及方法
- 一種控制重構(gòu)速度的方法、裝置及介質(zhì)
- 一種可調(diào)速率的磁盤陣列重構(gòu)方法、裝置及電子設(shè)備
- 一種分布式存儲集群重構(gòu)進度的統(tǒng)計方法、系統(tǒng)及裝置
- 自主重構(gòu)和人工干預(yù)重構(gòu)相結(jié)合的無人機集群重構(gòu)系統(tǒng)
- 一種指紋圖像重構(gòu)方法、指紋圖像特征提取方法及裝置
- 基于可視化操作的端口網(wǎng)絡(luò)參數(shù)仿真軟件設(shè)計方法
- 應(yīng)用于機器人軟件工程師的智能決策系統(tǒng)
- 一種軟件設(shè)計咨詢綜合服務(wù)管理系統(tǒng)
- 一種軟件技術(shù)綜合服務(wù)管理系統(tǒng)
- 一種可通用擴展的無人機遙測數(shù)據(jù)地面處理軟件設(shè)計方法
- 一種基于數(shù)據(jù)流和元件的軟件設(shè)計方法、軟件設(shè)計工具和軟件運行平臺
- 一種基于故障模式的軟件設(shè)計缺陷核查方法及系統(tǒng)
- 一種工業(yè)軟件設(shè)計與應(yīng)用平臺及其使用方法
- 一種核電廠安全級軟件設(shè)計系統(tǒng)和方法
- 面向DDD的軟件設(shè)計方法及系統(tǒng)
- 多平臺環(huán)境下的字符碼轉(zhuǎn)換系統(tǒng)以及計算機可讀記錄介質(zhì)
- 代碼轉(zhuǎn)換機及代碼轉(zhuǎn)換方法
- 代碼轉(zhuǎn)換
- 視頻流送系統(tǒng)、代碼轉(zhuǎn)換裝置和視頻流送方法
- 代碼轉(zhuǎn)換
- 印刷品檢查設(shè)備、印刷品檢查方法及印刷品檢查系統(tǒng)
- 頁面展示代碼轉(zhuǎn)換方法、裝置、設(shè)備及計算機存儲介質(zhì)
- 一種基于應(yīng)用安裝包文件的代碼轉(zhuǎn)換方法及裝置
- 著色器代碼的調(diào)試方法、裝置、電子設(shè)備及存儲介質(zhì)
- 一種數(shù)控G代碼的轉(zhuǎn)換方法





