DocumentCode
2524593
Title
Refactoring Generics in JAVA: A Case Study on Extract Method
Author
Marticorena, Raúl ; López, Carlos ; Crespo, Yania ; Pérez, F. Javier
Author_Institution
Comput. Languages & Syst. Area, Univ. of Burgos, Burgos, Spain
fYear
2010
fDate
15-18 March 2010
Firstpage
212
Lastpage
221
Abstract
The addition of support for genericity to mainstream programming languages has a notable influence in refactoring tools. This also applies to the JAVA programming language. Those versions of the language specification prior to JAVA 5 did not include support for generics. Therefore, refactoring tools had to evolve to modify their refactoring implementations according to the new language characteristics in order to assure the correct effects when transforming code containing generic definitions or using generic instantiations. This paper presents an evaluation of the behaviour of refactoring tools on source code that defines or uses generics. We compare the behaviour of five refactoring tools on a well known refactoring, Extract Method, and its implementation for the JAVA language. We distill the lessons learned from our evaluation into requirements that have to be taken into account by refactoring tools in order to fully conform to this new language feature.
Keywords
Java; software maintenance; software tools; source coding; JAVA programming language; extract method; generic definitions; generic instantiations; language specification; refactoring tools; source code; Arrays; Feature extraction; Indexes; Input variables; Java; Software; extract method; generic programming; generics; refactoring; test cases;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Maintenance and Reengineering (CSMR), 2010 14th European Conference on
Conference_Location
Madrid
ISSN
1534-5351
Print_ISBN
978-1-61284-369-8
Electronic_ISBN
1534-5351
Type
conf
DOI
10.1109/CSMR.2010.38
Filename
5714438
Link To Document