-
题名单例模式导向的源代码自动重构研究
被引量:6
- 1
-
-
作者
刘伟
胡志刚
刘宏韬
-
机构
中南大学信息科学与工程学院
中南大学软件学院
-
出处
《小型微型计算机系统》
CSCD
北大核心
2014年第12期2664-2669,共6页
-
基金
国家自然科学基金项目(60970038
61272148)资助
-
文摘
针对手工重构存在容易引入错误且重构效率较低等问题,本文提出了一种以单例模式为导向的源代码自动重构方法.首先将源代码转换成抽象语法树,然后对抽象语法树进行操作,按照单例模式的要求修改抽象语法树,并自动生成重构后的单例类.该方法不仅可以对指定类进行自动单例化重构,还可以对源代码中所有创建该类实例的代码进行自动重构.对方法进行正确性检验并将其应用于两个不同规模的软件项目,实验结果表明该方法可以准确、高效地实现类的自动单例化重构,重构算法的执行时间与系统规模呈线性关系.
-
关键词
源代码解析
抽象语法树
重构
自动重构
单例模式
模式导向重构
-
Keywords
source code parsing
abstract syntax tree
refactoring
automatic refactoring
the Singleton pattern
pattern-directed refactoring
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-
-
题名一种重复代码检测技术的改进研究
被引量:2
- 2
-
-
作者
刘建宾
李建忠
-
机构
北京信息科技大学计算机学院
韩山师范学院数学与信息技术学院
-
出处
《北京信息科技大学学报(自然科学版)》
2009年第3期44-49,共6页
-
基金
北京市自然科学基金项目(4073033)
北京市教委科技发展计划面上项目(KM200710772005)
+2 种基金
北京市管高等学校人才强教计划-中青年骨干教师项目
人才强教深化计划项目(PHR200907220)
广东省自然科学基金项目(05008310)
-
文摘
针对Kontogiannis重复代码度量方法不能区分IF条件语句与循环语句的控制流复杂性,且未对两个比较函数的返回类型进行判断时而产生错误匹配的问题,通过引入两个新的度量变量对其进行改进,结果表明,改进的度量公式能提高重复代码检测的准确性并减少匹配错误,为自动重构定位提供更有效的技术。
-
关键词
重复代码检测
度量
重构定位
自动重构
-
Keywords
duplicated code detecting
metrics
refactoring localization
automatic refactoring
-
分类号
TP311.5
[自动化与计算机技术—计算机软件与理论]
-
-
题名智能变电站改扩建二次系统配置文件自动重构技术
被引量:3
- 3
-
-
作者
贾宁
张永伍
张志朋
宁国丽
袁浩
张国辉
-
机构
南京南瑞继保电气有限公司
国网天津市电力公司
国网天津滨海供电公司
国网天津城南供电公司
南京五采智电电力科技有限公司
-
出处
《自动化与仪器仪表》
2018年第12期216-219,223,共5页
-
文摘
智能变电站改扩建二次系统配置文件时,为了避免在原SCD文件上直接手动修改,导致新增设备和相关联设备,甚至运行的设备被错误地修改,因此有必要将原SCD文件中改扩建的关联部分导出,进行解耦设计。验证正确后,再做导入操作,完成改扩建部分与原基建部分的局部自动重构。应用该技术,既保证了改扩建部分的相对独立性,又保证了原基建设备不会在改扩建中被误修改。同时保障了变电站二次设备的安全稳定运行。
-
关键词
智能变电站
改扩建
SCD文件
解耦
自动重构
-
Keywords
smart substation
reorganization and expansion
SCD file
the decoupling
automatic refactoring
-
分类号
TP27
[自动化与计算机技术—检测技术与自动化装置]
-
-
题名面向异步机制的自动重构方法研究
被引量:1
- 4
-
-
作者
纪铭涵
齐林
张杨
董士程
李朝帅
-
机构
河北科技大学信息科学与工程学院
-
出处
《河北科技大学学报》
CAS
北大核心
2021年第5期499-507,共9页
-
基金
国家自然科学基金(61440012)
河北省自然科学基金(18960106D)
河北省高等学校科学研究计划重点项目(ZD2019093)。
-
文摘
为了解决并行处理中同步阻塞会浪费系统资源和影响程序性能的问题,提出了一种基于CompletableFuture异步机制的自动重构方法。首先,使用WALA静态程序分析工具进行访问者模式分析、逃逸分析、别名分析以及数据流分析等静态程序分析技术,确定共享变量数据的操作方式;然后,基于CompletableFuture机制设置4种异步重构模式;最后,根据不同模式实现异步机制的自动重构。基于此方法,在Eclipse平台下开发了自动重构工具AsynRef,并对HSQLDB,Jenkins,JGroups和SPECjbb2005等4个大型实际应用程序进行自动重构,从重构个数、改变的代码行数、准确性和重构后程序性能等方面对AsynRef进行评估,对4个程序所包含的919个同步方法共完成387个异步机制转换。结果显示,使用AsynRef进行异步机制重构后,程序执行性能有8%到39%的不同程度的提升。AsynRef可以有效完成代码异步化自动重构,与传统手动重构相比,有效提升了异步化的重构效率。
-
关键词
并行处理
同步机制
异步机制
静态程序分析
自动重构
-
Keywords
concurrent processing
synchronization mechanism
asynchronous mechanism
static program analysis
automatic refactoring
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-
-
题名面向设计层次优化的软件自动化重构
被引量:5
- 5
-
-
作者
高东静
林云
彭鑫
赵文耘
-
机构
复旦大学软件学院
上海市数据科学重点实验室
-
出处
《计算机应用与软件》
2017年第10期7-13,39,共8页
-
基金
国家自然科学基金项目(61370079)
国家高技术研究发展计划(2012AA011202)
-
文摘
目前许多研究人员对自动化软件重构进行了探索并开发了一系列重构工具,旨在帮助程序员更高效地完成软件重构任务、提升代码质量。然而,现有的软件重构工具多侧重于局部的设计或编码问题,而非设计层面的问题。另一方面,基于搜索的重构方法往往将改进某一项代码度量指标作为重构目标,而非面向软件的层次化设计。针对这种情况,提出一种新的基于搜索的软件自动化重构方法,该方法使用了基于设计结构矩阵(DSM)的软件模块层次化度量方法,能够自动生成可以得到最优软件模块化设计的重构建议。在此基础上,实现了自动化重构工具DSMRefactoring,并将DSMRefactoring应用于开源系统进行案例研究,初步验证了方法和工具的有效性。
-
关键词
自动化重构
软件设计
模块化
设计层次
-
Keywords
automatic refactoring Software design Modularity Design hierarchy
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-