A meta-model for language-independent refactoring

Refactoring-transforming code while preserving behaviour-is considered a key approach for improving object-oriented software systems. Unfortunately, all of the current refactoring tools depend on language-dependent refactoring engines, which prevents a smooth integration with mainstream development...

Full description

Saved in:
Bibliographic Details
Published inProceedings International Symposium on Principles of Software Evolution pp. 154 - 164
Main Authors Tichelaar, S., Ducasse, S., Demeyer, S., Nierstrasz, O.
Format Conference Proceeding
LanguageEnglish
Published IEEE 2000
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:Refactoring-transforming code while preserving behaviour-is considered a key approach for improving object-oriented software systems. Unfortunately, all of the current refactoring tools depend on language-dependent refactoring engines, which prevents a smooth integration with mainstream development environments. We investigate the similarities between refactorings for Smalltalk and Java, derive a language-independent meta-model and show that it is feasible to build a language-independent refactoring engine on top of this meta-model. Our feasibility study is validated by means of a tool prototype which uses the same engine to refactor both Smalltalk and Java code. Using our approach we minimize the language-dependent part of refactoring tools, providing a standard way for programmers and tools to perform refactorings no matter what language they work in.
ISBN:0769509061
9780769509068
DOI:10.1109/ISPSE.2000.913233