arrow
Return

Design annotations to improve API discoverability

delete2017-04-01
delete11
PRE
AI
A
André L. Santos *
B
Brad A. Myers
DOI:10.1016/j.jss.2016.12.036delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
User studies have revealed that programmers face several obstacles when learning application programming interfaces (APIs). A considerable part of such difficulties relate to discovery of API elements and the relationships among them. To address discoverability problems, we show how to complement APIs with design annotations, which document design decisions in a program-processable form for types, methods, and parameters. The information provided by the annotations is consumed by the integrated development environment (IDE) in order to assist API users with useful code completion proposals regarding object creation and manipulation, which facilitate API exploration and learning. As a proof of concept, we developed Dacite, a tool which comprises a set of Java annotations and an accompanying plugin for the Eclipse IDE. A user study revealed that Dacite is usable and effective, and Dacite's proposals enable programmers to be more successful in solving programming tasks involving unfamiliar APIs. (C) 2017 Elsevier Inc. All rights reserved.
Keywords:
API usability
Annotations
Code completion
IDE
Eclipse
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

Journal of Systems and Software cover
Journal of Systems and Software
IF:
4.1
Papers:
5.4K
Citations:
8.4K

Organization

C
Carnegie Mellon University
Scholars:
1.4W
Papers: 1.4W
Citations: 2.7W
I
instituto universitario de lisboa
Scholars:
1.6K
Papers: 1.8K
Citations: 2