Although code completion is inevitable for effective code editing on integrated development environments, existing code completion tools can be improved. A previous study noted that developers sometimes perform ineffective repetitions of the same code completion operations. Hence, this paper introduces a statement, “A more recently inserted code completion candidate should be given a higher rank among previously inserted items in the candidate list.” To confirm this statement, this paper examines the following three points. First, an experiment using operation histories is presented to reconfirm that developers more frequently repeat recent code completion operations. Second, a tool called RCC Candidate Sorter is presented. It alters the sorting algorithm of the default Eclipse code completion tool to prioritize candidates inserted by recent code completion. Finally, an experiment is conducted to evaluate the performance of the tool. The experimental result shows that it outperforms an existing method.
A coding pattern is a sequence of method calls and control structures, which appears repeatedly in source code. In this paper, we have extracted coding patterns of each version of ten Java programs, and then explored the number of versions in which the coding patterns appear. This paper reports the characteristics of coding patterns over versions. While learning from coding patterns is expected to help developers to perform appropriate modifications and enhancements for the software, many coding patterns are unstable as similar to the result of clone genealogy research.