Refactoring legacy javascript code to use classes: The good, the bad and the ugly
Artículo
Publication date
2017Metadata
Show full item record
Cómo citar
Silva, Leonardo Humberto
Cómo citar
Refactoring legacy javascript code to use classes: The good, the bad and the ugly
Abstract
JavaScript systems are becoming increasingly complex and
large. To tackle the challenges involved in implementing these systems,
the language is evolving to include several constructions for programmingin-
the-large. For example, although the language is prototype-based, the
latest JavaScript standard, named ECMAScript 6 (ES6), provides native
support for implementing classes. Even though most modern web browsers
support ES6, only a very few applications use the class syntax. In this
paper, we analyze the process of migrating structures that emulate classes
in legacy JavaScript code to adopt the new syntax for classes introduced
by ES6. We apply a set of migration rules on eight legacy JavaScript
systems. In our study, we document: (a) cases that are straightforward
to migrate (the good parts); (b) cases that require manual and ad-hoc
migration (the bad parts); and (c) cases that cannot be migrated due
to limitations and restrictions of ES6 (the ugly parts). Six out of eight
systems (75%) contain instances of bad and/or ugly cases. We also collect
the perceptions of JavaScript developers about migrating their code to
use the new syntax for classes.
Indexation
Artículo de publicación SCOPUS
Identifier
URI: https://repositorio.uchile.cl/handle/2250/168926
DOI: 10.1007/978-3-319-56856-0_11
ISSN: 16113349
03029743
Quote Item
Lecture Notes in Computer Science, Volumen 10221 LNCS, 2017
Collections