Open Access. Powered by Scholars. Published by Universities.®

Physical Sciences and Mathematics Commons

Open Access. Powered by Scholars. Published by Universities.®

City University of New York (CUNY)

Software Engineering

Software environments

Publication Year

Articles 1 - 3 of 3

Full-Text Articles in Physical Sciences and Mathematics

Automated Refactoring Of Legacy Java Software To Enumerated Types, Raffi T. Khatchadourian Jan 2016

Automated Refactoring Of Legacy Java Software To Enumerated Types, Raffi T. Khatchadourian

Publications and Research

Modern Java languages introduce several new features that offer significant improvements over older Java technology. In this article we consider the new enum construct, which provides language support for enumerated types. Prior to recent Java languages, programmers needed to employ various patterns (e.g., the weak enum pattern) to compensate for the absence of enumerated types in Java. Unfortunately, these compensation patterns lack several highly-desirable properties of the enum construct, most notably, type safety. We present a novel fully-automated approach for transforming legacy Java code to use the new enumeration construct. This semantics-preserving approach increases type safety, produces code that is …


Automated Refactoring Of Legacy Java Software To Enumerated Types, Raffi T. Khatchadourian, Jason Sawin, Atanas Rountev Oct 2007

Automated Refactoring Of Legacy Java Software To Enumerated Types, Raffi T. Khatchadourian, Jason Sawin, Atanas Rountev

Publications and Research

Modern Java languages introduce several new features that offer significant improvements over older Java technology. In this article we consider the new enum construct, which provides language support for enumerated types. Prior to recent Java languages, programmers needed to employ various patterns (e.g., the weak enum pattern) to compensate for the absence of enumerated types in Java. Unfortunately, these compensation patterns lack several highly-desirable properties of the enum construct, most notably, type safety. We present a novel fully-automated approach for transforming legacy Java code to use the new enumeration construct. This semantics-preserving approach increases type safety, produces code that is …


Automated Refactoring Of Legacy Java Software To Enumerated Types, Raffi T. Khatchadourian, Jason Sawin, Atanas Rountev Apr 2007

Automated Refactoring Of Legacy Java Software To Enumerated Types, Raffi T. Khatchadourian, Jason Sawin, Atanas Rountev

Publications and Research

Modern Java languages introduce several new features that offer significant improvements over older Java technology. In this article we consider the new enum construct, which provides language support for enumerated types. Prior to recent Java languages, programmers needed to employ various patterns (e.g., the weak enum pattern) to compensate for the absence of enumerated types in Java. Unfortunately, these compensation patterns lack several highly-desirable properties of the enum construct, most notably, type safety. We present a novel fully-automated approach for transforming legacy Java code to use the new enumeration construct. This semantics-preserving approach increases type safety, produces code that is …