Towards a collection of refactoring patterns based on code clone categorization
Masayuki Tokunaga, Norihiro Yoshida, Kazuki Yoshioka, Makoto Matsushita, Katsuro Inoue · 2011
Code clone is a code fragment that has identical or similar fragments to it in the source code. Fowler and Kereivsky wrote several techniques to remove code clones in refactoring patterns that they documented. Those refactoring patterns include characteristics of code clone and corresponding steps to merge code clones. However, according to our experience in code clone research field, a lot of different types exist between code clones similar to each others, and most of those difference types are not mentioned in previous refactoring pattern. It is useful to develop a collection of patterns for clone refactoring based on precise code clone categorization. In this paper, we describe an approach to developing our intended collection of refactoring patterns and then propose an example of refactoring pattern that we have developed.