Refactoring and Active Object Languages

1Citations
Citations of this article
1Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Refactorings are important for object-oriented (OO) programs. Actor- and active object programs place an emphasis on concurrency. In this article, we show how well-known OO refactorings such as Hide Delegate, Move Method, and Extract Class interact with a concurrency model that distinguishes between local and remote objects. Refactorings that are straightforward in Java suddenly force the developers to reflect on the underlying assumptions of their actor system. We show that this reflection is primarily necessary for refactorings that add or remove method calls, as well as constructor invocations. We present a general notion of correctness of refactorings in a concurrent setting, and indicate which refactorings are correct under this notion. Finally, we discuss how development tools can assist the developer with refactorings in languages with rich semantics.

Cite

CITATION STYLE

APA

Stolz, V., Pun, V. K. I., & Gheyi, R. (2020). Refactoring and Active Object Languages. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 12477 LNCS, pp. 138–158). Springer Science and Business Media Deutschland GmbH. https://doi.org/10.1007/978-3-030-61470-6_9

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free