当前位置: X-MOL 学术Software Qual. J. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
What are the characteristics of popular APIs? A large-scale study on Java, Android, and 165 libraries
Software Quality Journal ( IF 1.9 ) Pub Date : 


Abstract

Software systems are commonly implemented with the support of libraries, which provide features via APIs. Ideally, APIs should have some characteristics, for example, they should be well documented and stable so that client systems can confidently rely on them. However, not all APIs are equal in number of clients: while some APIs are very popular and used worldwide, other may face much lower usage rates. In this context, one question appears: are there particular characteristics that differentiate popular APIs from ordinary APIs? Answering this question can uncover how worldwide APIs are actually implemented and maintained, revealing practices to better support both research and development on APIs. In this paper, we assess the characteristics of popular APIs, including their size, legibility, documentation, stability, and client adoption. We analyze 1491 APIs provided by Java, Android, and 165 libraries. We detect that popular APIs are distinct from ordinary ones, for example, often, popular APIs are larger, have more comments, and are more unstable than ordinary APIs. Finally, we provide a set of lessons learned from the popular APIs on factors that developers can control, such as the exposure of public methods and the API stability.



中文翻译:

常用API的特征是什么?关于Java,Android和165个库的大规模研究

摘要

软件系统通常在库的支持下实现,该库通过API提供功能。理想情况下,API应该具有一些特征,例如,它们应该有充分的文档记录和稳定的信息,以便客户端系统可以放心地依赖它们。但是,并非所有API的客户端数量都是相等的:尽管某些API在世界范围内非常流行和使用,而另一些API的使用率可能要低得多。在这种情况下,会出现一个问题:是否存在使流行的API与普通的API区别开来的特定特征?回答这个问题可以揭示全球API的实际实现和维护方式,并揭示可以更好地支持API研究和开发的实践。在本文中,我们评估了流行的API的特征,包括它们的大小,易读性,文档,稳定性和客户采用率。我们分析了Java,Android和165个库提供的1491个API。我们检测到流行的API与普通的API有所不同,例如,流行的API通常比普通的API大,注释多且不稳定。最后,我们提供了从流行的API中汲取的关于开发人员可以控制的因素的一组经验教训,例如公开方法的公开性和API的稳定性。

更新日期:2020-06-07
down
wechat
bug