2005
DOI: 10.1145/1103845.1094832
|View full text |Cite
|
Sign up to set email alerts
|

Refactoring support for class library migration

Abstract: As object-oriented class libraries evolve, classes are occasionally deprecated in favor of others with roughly the same functionality. In Java's standard libraries, for example, class Hashtable has been superseded by HashMap, and Iterator is now preferred over Enumeration. Migrating client applications to use the new idioms is often desirable, but making the required changes to declarations and allocation sites can be quite labor-intensive. Moreover, migration becomes complicated-and sometimes impossible-if an… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
41
0

Year Published

2006
2006
2014
2014

Publication Types

Select...
5
1

Relationship

0
6

Authors

Journals

citations
Cited by 38 publications
(42 citation statements)
references
References 32 publications
(91 reference statements)
0
41
0
Order By: Relevance
“…Dincklage and Diwan [vDD04] use various heuristics to convert from non-generic classes to generic classes. Balaban et al [BTF05] propose refactorings that automatically replace obsolete library classes with their newer counterparts. Component developers have to provide mappings between legacy classes and their replacements, and an analysis based on type constraints determines where the replacement can be done.…”
Section: Refactoringmentioning
confidence: 99%
“…Dincklage and Diwan [vDD04] use various heuristics to convert from non-generic classes to generic classes. Balaban et al [BTF05] propose refactorings that automatically replace obsolete library classes with their newer counterparts. Component developers have to provide mappings between legacy classes and their replacements, and an analysis based on type constraints determines where the replacement can be done.…”
Section: Refactoringmentioning
confidence: 99%
“…Balaban et al [1] present a tool for converting between obsolete classes and their modern replacements. The programmer specifies a mapping between the old APIs and the new APIs, and the tool uses a type-constraint analysis to determine whether it can replace all usages of the obsolete class.…”
Section: Related Workmentioning
confidence: 99%
“…Several approaches go beyond the limits of refactoring by providing some general means of transformation [CN96,KH98,BTF05,PLHM08]. Again, the showcases for all these approaches concern API evolution or migration between very much similar APIs.…”
Section: Related Workmentioning
confidence: 99%
“…Again, the showcases for all these approaches concern API evolution or migration between very much similar APIs. For instance, [BTF05] describes a rewriting-based approach for API migration that has been applied to the types Vector and ArrayList of the Java Core API, where the latter type is essentially a 'careful redesign' of the former. Nevertheless, the transformation techniques from such previous work are important ingredients of a general approach to API migration.…”
Section: Related Workmentioning
confidence: 99%