Artículo
Slimming javascript applications: An approach for removing unused functions from javascript libraries
Vázquez, Hernán Ceferino
; Bergel, Alexandre; Vidal, Santiago Agustín
; Diaz Pace, Jorge Andres
; Marcos, Claudia Andrea
Fecha de publicación:
03/2019
Editorial:
Elsevier Science
Revista:
Information And Software Technology
ISSN:
0950-5849
Idioma:
Inglés
Tipo de recurso:
Artículo publicado
Clasificación temática:
Resumen
Context: A common practice in JavaScript development is to ship and deploy an application as a large file, called bundle, which is the result of combining the application code along with the code of all the libraries the application depends on. Despite the benefits of having a single bundle per application, this approach leads to applications being shipped with significant portions of code that are actually not used, which unnecessarily inflates the JavaScript bundles and could slow down website loading because of the extra unused code. Although some static analysis techniques exist for removing unused code, our investigations suggest that there is still room for improvements. Objective: The goal of this paper is to address the problem of reducing the size of bundle files in JavaScript applications. Method: In this context, we define the notion of Unused Foreign Function (UFF) to denote a JavaScript function contained in dependent libraries that is not needed at runtime. Furthermore, we propose an approach based on dynamic analysis that assists developers to identify and remove UFFs from JavaScript bundles. Results: We report on a case-study performed over 22 JavaScript applications, showing evidence that our approach can produce size reductions of 26% on average (with reductions going up to 66% in some applications). Conclusion: It is concluded that removing unused foreign functions from JavaScript bundles helps reduce their size, and thus, it can boost the results of existing static analysis techniques.
Archivos asociados
Licencia
Identificadores
Colecciones
Articulos(ISISTAN)
Articulos de INSTITUTO SUPERIOR DE INGENIERIA DEL SOFTWARE
Articulos de INSTITUTO SUPERIOR DE INGENIERIA DEL SOFTWARE
Citación
Vázquez, Hernán Ceferino; Bergel, Alexandre; Vidal, Santiago Agustín; Diaz Pace, Jorge Andres; Marcos, Claudia Andrea; Slimming javascript applications: An approach for removing unused functions from javascript libraries; Elsevier Science; Information And Software Technology; 107; 3-2019; 18-29
Compartir
Altmétricas