Java']JavaScript API Deprecation in the Wild: A First Assessment

被引:0
作者
Nascimento, Romulo [1 ]
Brito, Aline [1 ]
Hora, Andre [1 ]
Figueiredo, Eduardo [1 ]
机构
[1] Univ Fed Minas Gerais, Dept Comp Sci, Belo Horizonte, MG, Brazil
来源
PROCEEDINGS OF THE 2020 IEEE 27TH INTERNATIONAL CONFERENCE ON SOFTWARE ANALYSIS, EVOLUTION, AND REENGINEERING (SANER '20) | 2020年
关键词
API deprecation; !text type='Java']Java[!/text]Script; Software Library;
D O I
10.1109/saner48275.2020.9054854
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Building an application using third-party libraries is a common practice in software development. As any other software system, code libraries and their APIs evolve over time. In order to help version migration and ensure backward compatibility, a recommended practice during development is to deprecate API. Although studies have been conducted to investigate deprecation in some programming languages, such as Java and C#, there are no detailed studies on API deprecation in the JavaScript ecosystem. This paper provides an initial assessment of API deprecation in JavaScript by analyzing 50 popular software projects. Initial results suggest that the use of deprecation mechanisms in JavaScript packages is low. However, we find five different ways that developers use to deprecate API in the studied projects. Among these solutions, deprecation utility (i.e., any sort of function specially written to aid deprecation) and code comments are the most common practices in JavaScript. Finally, we find that the rate of helpful message is high: 67% of the deprecations have replacement messages to support developers when migrating APIs.
引用
收藏
页码:567 / 571
页数:5
相关论文
共 16 条
  • [1] How to Break an API: Cost Negotiation and Community Values in Three Software Ecosystems
    Bogart, Christopher
    Kastner, Christian
    Herbsleb, James
    Thung, Ferdian
    [J]. FSE'16: PROCEEDINGS OF THE 2016 24TH ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON FOUNDATIONS OF SOFTWARE ENGINEERING, 2016, : 109 - 120
  • [2] You broke my code: understanding the motivations for breaking changes in APIs
    Brito, Aline
    Valente, Marco Tulio
    Xavier, Laerte
    Hora, Andre
    [J]. EMPIRICAL SOFTWARE ENGINEERING, 2020, 25 (02) : 1458 - 1492
  • [3] On the use of replacement messages in API deprecation: An empirical study
    Brito, Gleison
    Hora, Andre
    Valente, Marco Tulio
    Robbes, Romain
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 2018, 137 : 306 - 321
  • [4] Do Developers Deprecate APIs with Replacement Messages? A Large-Scale Analysis on Java']Java Systems
    Brito, Gleison
    Hora, Andre
    Valente, Marco Tulio
    Robbes, Romain
    [J]. 2016 IEEE 23RD INTERNATIONAL CONFERENCE ON SOFTWARE ANALYSIS, EVOLUTION, AND REENGINEERING (SANER), VOL 1, 2016, : 360 - 369
  • [5] Granli W., 2017, INT WORKSH PRINC SOF
  • [6] Characterising Deprecated Android APIs
    Li, Li
    Gao, Jun
    Bissyande, Tegawende F.
    Ma, Lei
    Xia, Xin
    Klein, Jacques
    [J]. 2018 IEEE/ACM 15TH INTERNATIONAL CONFERENCE ON MINING SOFTWARE REPOSITORIES (MSR), 2018, : 254 - 264
  • [7] The effect of object-oriented frameworks on developer productivity
    Moser, S
    Nierstrasz, O
    [J]. COMPUTER, 1996, 29 (09) : 45 - &
  • [8] Robbes R., 2012, INT S FDN SOFTW ENG, P1
  • [9] To react, or not to react: Patterns of reaction to API deprecation
    Sawant, Anand Ashok
    Robbes, Romain
    Bacchelli, Alberto
    [J]. EMPIRICAL SOFTWARE ENGINEERING, 2019, 24 (06) : 3824 - 3870
  • [10] Why are features deprecated? An investigation into the motivation behind deprecation
    Sawant, Anand Ashok
    Huang, Guangzhe
    Vilen, Gabriel
    Stojkovski, Stefan
    Bacchelli, Alberto
    [J]. PROCEEDINGS 2018 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME), 2018, : 13 - 24