返回
RefDiff 2.0: A Multi-Language Refactoring Detection Tool
DOI:10.1109/TSE.2020.2968072.png)
摘要
En 中文
Identifying refactoring operations in source code changes is valuable to understand software evolution. Therefore, several tools have been proposed to automatically detect refactorings applied in a system by comparing source code between revisions. The availability of such infrastructure has enabled researchers to study refactoring practice in large scale, leading to important advances on refactoring knowledge. However, although a plethora of programming languages are used in practice, the vast majority of existing studies are restricted to the Java language due to limitations of the underlying tools. This fact poses an important threat to external validity. Thus, to overcome such limitation, in this paper we propose RefDiff 2.0, a multi-language refactoring detection tool. Our approach leverages techniques proposed in our previous work and introduces a novel refactoring detection algorithm that relies on the Code Structure Tree (CST), a simple yet powerful representation of the source code that abstracts away the specificities of particular programming languages. Despite its language-agnostic design, our evaluation shows that RefDiff's precision (96 percent) and recall (80 percent) are on par with state-of-the-art refactoring detection approaches specialized in the Java language. Our modular architecture also enables one to seamlessly extend RefDiff to support other languages via a plugin system. As a proof of this, we implemented plugins to support two other popular programming languages: JavaScript and C. Our evaluation in these languages reveals that precision and recall ranges from 88 to 91 percent. With these results, we envision RefDiff as a viable alternative for breaking the single-language barrier in refactoring research and in practical applications of refactoring detection.
Keyword:
Codes
Java
Source coding
History
Crawlers
Measurement
Refactoring
source code analysis
code repositories
git
AI总结
对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。
期刊
IF:
5.6
论文数:
2.9K
被引数:
1.1W
机构
引用论文
Analysis of Variance for Replicated Spatial Point Patterns in Clinical Neuroanatomy临床神经解剖学中重复空间点模式的方差分析
Development of the dendritic branching pattern of the Medial Giant Interneuron in the grasshopper embryo蝗虫胚胎中内侧巨大中间神经元的树突状分支模式的发展
Chapter 7 Axonal growth in developing and regenerating amphibian retinotectal projection第7章两栖动物视网膜视网膜突起发育和再生中的轴突生长

