Analyzing the Eclipse API Usage: Putting the Developer in the Loop
Loading...
Date
2013
Journal Title
Journal ISSN
Volume Title
Publisher
IEEE
Abstract
Eclipse guidelines distinguish between two types
of interfaces provided to third-party developers, i.e., APIs and
non-APIs. APIs are stable and supported, while non-APIs are
unstable, unsupported and discouraged as they are subject to
arbitrary change or removal without notice. In our previous
work, we found that despite the discouragement of Eclipse,
the use of non-APIs in Eclipse third-party plug-ins (ETPs) is
not uncommon. Furthermore, we found that these non-APIs
are the main cause of ETP incompatibilities in forthcoming
releases of the Eclipse.
In the current work we conducted a survey aiming at
understanding why do the ETP developers use non-APIs. We
have observed that developers with a level of education of up
to master degree have a tendency not to read product manuals/
guidelines. Furthermore, while for less experienced developers
instability of the non-APIs overshadows their benefits, more
experienced developers prefer to enjoy the benefits of non-APIs
despite the instability problem. Finally, we have observed that
there are no significant differences between Open Source and
commercial Eclipse products in terms of awareness of Eclipse
guidelines and interfaces, Eclipse product size and updating of
Eclipse product in the new SDK releases.
Description
Keywords
Eclipse, APIs, non-APIs, Survey, Developers
Citation
Businge, J., Serebrenik, A., & van den Brand, M. (2013, March). Analyzing the Eclipse API usage: Putting the developer in the loop. In 2013 17th European Conference on Software Maintenance and Reengineering (pp. 37-46). IEEE.