Conference Paper

Refactorings for Replacing Dynamic Instructions with Static ones: The Case of Ruby

PDF Online

Authors Elder de Oliveira Rodrigues Jr. Rafael Serapilha Durelli Raphael Winckler de Bettio Leonardo Montecchi Ricardo Terra
Dynamic features offered by programming languages provide greater flexibility to the programmer (e.g., dynamic constructions of classes and methods) and reduction of duplicate code snippets. However, the unnecessary use of dynamic features may detract from the code in many ways, such as readability, comprehension, and maintainability of software. Therefore, this paper proposes 20 refactorings that replace dynamic instructions with static ones. In an evaluation on 28 open-source Ruby systems, we could refactor 743 of 1,651 dynamic statements (45%).
DOI 10.1145/3264637.3264645
Event XXII Simpósio Brasileiro de Linguagens de Programação (SBLP 2018)
Venue São Carlos, Brazil
Date September 20-21, 2018
Pages 59-66
Publisher ACM
ISBN 978-1-4503-6480-5

© 2017-2019 Leonardo Montecchi