[发明专利]一种基于模板的软件设计模式重构方法在审
申请号: | 201810359740.2 | 申请日: | 2018-04-20 |
公开(公告)号: | CN108804078A | 公开(公告)日: | 2018-11-13 |
发明(设计)人: | 俞东进;张萍;王琳;杨加柞 | 申请(专利权)人: | 杭州电子科技大学 |
主分类号: | G06F8/20 | 分类号: | G06F8/20;G06F8/72 |
代理公司: | 杭州君度专利代理事务所(特殊普通合伙) 33240 | 代理人: | 朱月芬 |
地址: | 310018 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 重构 设计模式 软件设计模式 代码转换 工具生成 关键信息 实例代码 用户需求 源码信息 定制化 智能化 重构的 书写 转换 开发 | ||
本发明公开了一种基于模板的软件设计模式重构方法,本发明先选取需要重构的某一个具体设计模式实例,使用Enterprise Architect工具将代码转换为XML文件,再提取XML文件中包含的类的关键信息,形成新的XML文件;根据为每种设计模式定制化的重构模板,采用XSLT转换技术针对用户需求对新的XML文件进行相应的组合重构操作,从而将新的XML文件转换成重构后的XML文件;最后对重构后的XML文件,利用Enterprise Architect工具生成对应的源码信息,获得重构后的设计模式实例代码。本发明不仅可以满足不同用户的需求,同时生成的代码也会给开发人员书写代码智能化提供方便。
技术领域
本发明属于软件工程领域,具体涉及一种基于模板的软件设计模式重构方法。
背景技术
目前,软件行业已经成为世界上最大的行业,软件已经成为与所有基于技术与基于服务的企业运转息息相关的一部分。但随着业务规模和需求的不断扩大,软件系统的维护、修改及扩展变得日益复杂。通过对设计模式进行重构,可以帮助开发人员提高重构效率,高效生成相应设计模式的代码,减少重复工作量和出错的可能性。因此,如何基于设计模式对软件系统进行重构,对于有效的程序理解和重用、并最终提高软件设计质量具有重要意义。
目前,开发人员越来越认识到重构的重要性,针对系统重构的研究工作正在陆续开展中,并取得重要成果。但是,专门针对基于设计模式的代码重构研究工作还相对较少,主要是因为设计模式本身的规定并不明确,同时也存在设计模式变体,从而限制了设计模式重构的发展。所以,目前大多数只针对特定的一种或者几种设计模式进行挖掘,工具适用范围较小,不能满足人们的需求。
发明内容
本发明针对现有技术的不足,提供了一种基于模板的软件设计模式重构方法。
本发明方法的具体步骤是:
步骤1.选取需要重构的某一个具体设计模式实例,使用Enterprise Architect工具将代码转换为XML文件,再提取XML文件中包含的类的关键信息,形成新的XML文件,所述的类的关键信息包括类名、属性名、方法名、类之间的关系;
步骤2.根据为每种设计模式定制化的重构模板,采用XSLT转换技术针对用户需求对新的XML文件进行相应的组合重构操作,从而将新的XML文件转换成重构后的XML文件;
其中,步骤2所述的组合重构操作进一步包括如下步骤(1)至(6):
步骤(1)检查对重构模板施加独立型组合操作还是关联型组合操作,如是独立型组合操作则进行下一步,若是关联型组合操作则转到步骤(4);
步骤(2)检查是否只有独立类,如是则提供相应的类名、父类名、类之间的关系,转到步骤3,所述的独立类表示添加或者删除该类对第三个类没有影响的类;
步骤(3)检查除独立类外是否有属性或方法的加入,若是有独立类和属性,则提供属性名、类名、类之间的关系;若是有独立类和方法,则提供方法名、类名、类之间的关系;若是有独立类、属性和方法,则提供相应的属性名或方法名、类名、类之间的关系,转到步骤3;
步骤(4)检查是否只有关联类,如是则提供相应的类名、关联类名、类之间的关系,转到步骤3;所述的关联类表示添加或者删除一个类会对第三个类造成影响的类;
步骤(5)检查是否有关联类和关联方法,如是则提供相应的方法名、类名、关联类名,转到步骤3;
步骤(6)检查是否有关联类和关联属性,如是则提供相应的属性名、类名、关联类名、类之间的关系;
步骤3.对重构后的XML文件,利用Enterprise Architect工具生成对应的源码信息,获得重构后的设计模式实例代码。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州电子科技大学,未经杭州电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810359740.2/2.html,转载请声明来源钻瓜专利网。