Code transformation issues in move-instance-method refactorings
Proceedings of the 3rd International Workshop on Refactoring(2019)
摘要
Refactorings, by definition, preserve the behavior of a target program. Such a strong semantic property is encoded by a set of preconditions for each refactoring. Only if all preconditions are satisfied will a target program be transformed. The code transformation that implements the refactoring follows another set of rules to produce syntactically-correct, refactored code. Consequently, it is easy to believe that most behavior-changing violations in refactorings are induced by incorrect preconditions or lack of required checks. In this paper, however, we show that code transformations for Move-Instance-Method Refactoring available in several popular Java Integrated Development Environments do not preserve program behavior. We report these errors and propose solutions for each identified problem.
更多查看译文
关键词
refactoring,precondition,code transformation,move instance method
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络