Automated detection of refactorings in evolving components
One of the costs of reusing software components is updating applications to use the new
version of the components. Updating an application can be error-prone, tedious, and …
version of the components. Updating an application can be error-prone, tedious, and …
Refactoring support for class library migration
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 …
others with roughly the same functionality. In Java's standard libraries, for example, class …
JunGL: a scripting language for refactoring
M Verbaere, R Ettinger, O De Moor - Proceedings of the 28th …, 2006 - dl.acm.org
Refactorings are behaviour-preserving program transformations, typically for improving the
structure of existing code. A few of these transformations have been mechanised in …
structure of existing code. A few of these transformations have been mechanised in …
Sound and extensible renaming for Java
Descriptive names are crucial to understand code. However, good names are notoriously
hard to choose and manually changing a globally visible name can be a maintenance …
hard to choose and manually changing a globally visible name can be a maintenance …
Tool-supported refactoring for JavaScript
Refactoring is a popular technique for improving the structure of existing programs while
maintaining their behavior. For statically typed programming languages such as Java, a …
maintaining their behavior. For statically typed programming languages such as Java, a …
Refactoring using type constraints
Type constraints express subtype relationships between the types of program expressions,
for example, those relationships that are required for type correctness. Type constraints were …
for example, those relationships that are required for type correctness. Type constraints were …
Efficiently refactoring Java applications to use generic libraries
Java 1.5 generics enable the creation of reusable container classes with compiler-enforced
type-safe usage. This eliminates the need for potentially unsafe down-casts when retrieving …
type-safe usage. This eliminates the need for potentially unsafe down-casts when retrieving …
Refactoring Java programs for flexible locking
Recent versions of the Java standard library offer flexible locking constructs that go beyond
the language's built-in monitor locks in terms of features, and that can be fine-tuned to suit …
the language's built-in monitor locks in terms of features, and that can be fine-tuned to suit …
Refactoring for parameterizing Java classes
Type safety and expressiveness of many existing Java libraries and their client applications
would improve, if the libraries were upgraded to define generic classes. Efficient and …
would improve, if the libraries were upgraded to define generic classes. Efficient and …
A comprehensive approach to naming and accessibility in refactoring Java programs
M Schäfer, A Thies, F Steimann… - IEEE Transactions on …, 2012 - ieeexplore.ieee.org
Automated tool support for refactoring is now widely available for mainstream programming
languages such as Java. However, current refactoring tools are still quite fragile in practice …
languages such as Java. However, current refactoring tools are still quite fragile in practice …