arrow
Return

Identification of refactoring opportunities introducing polymorphism

delete2010-03-01
delete41
PRE
AI
N
Nikolaos Tsantalis
A
Alexander Chatzigeorgiou *
DOI:10.1016/j.jss.2009.09.017delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
Polymorphism is one of the most important features offered by object-oriented programming languages, since it allows to extend/modify the behavior of a class without altering its source code, in accordance to the Open/Closed Principle. However, there is a lack of methods and tools for the identification of places in the code of an existing system that could benefit from the employment of polymorphism. In this paper we propose a technique that extracts refactoring suggestions introducing polymorphism. The approach ensures the behavior preservation of the code and the applicability of the refactoring suggestions based on the examination of a set of preconditions. (C) 2009 Elsevier Inc. All rights reserved.
Keywords:
Refactoring
Polymorphism
State/Strategy design pattern
Object-oriented design
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

Journal of Systems and Software cover
Journal of Systems and Software
IF:
4.1
Papers:
5.4K
Citations:
8.4K

Organization

U
University of Macedonia
Scholars:
824
Papers: 915
Citations: 536