Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1109/ICSM.2011.6080790guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

An evaluation of the strategies of sorting, filtering, and grouping API methods for Code Completion

Published: 25 September 2011 Publication History

Abstract

Code Completion is one of the most popular IDE features for accessing APIs, freeing programmers from remembering specific details about an API and reducing keystrokes. We propose three ways to enhance the current code-completion systems to work more effectively with large APIs. First, we propose two methods for sorting APIs, by type hierarchy and by use count, and show that their use significantly reduces the number of API proposals a user must navigate while using Code Completion. Second, we show that context-specific filtering of inappropriate proposals can also reduce the number of proposals a user must navigate. Third, we propose to group API proposals by their functional roles, which can help maintain a well-ordered, meaningful list of API proposals in the presence of dynamic reordering. These functionalities are grouped into a research prototype, BCC (Better Code Completion). We evaluated fourteen configurations of BCC by simulating Code Completion nearly three million times on nine open-source Java projects that utilize AWT/Swing.

Cited By

View all
  • (2024)Vision Paper: Proof-Carrying Code CompletionsProceedings of the 39th IEEE/ACM International Conference on Automated Software Engineering Workshops10.1145/3691621.3694932(35-42)Online publication date: 27-Oct-2024
  • (2022)All you need is logs: improving code completion by learning from anonymous IDE usage logsProceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3540250.3558968(1269-1279)Online publication date: 7-Nov-2022
  • (2020)Adaptive Code Completion with Meta-learningProceedings of the 12th Asia-Pacific Symposium on Internetware10.1145/3457913.3457933(116-125)Online publication date: 1-Nov-2020
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Guide Proceedings
ICSM '11: Proceedings of the 2011 27th IEEE International Conference on Software Maintenance
September 2011
594 pages
ISBN:9781457706639

Publisher

IEEE Computer Society

United States

Publication History

Published: 25 September 2011

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 10 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Vision Paper: Proof-Carrying Code CompletionsProceedings of the 39th IEEE/ACM International Conference on Automated Software Engineering Workshops10.1145/3691621.3694932(35-42)Online publication date: 27-Oct-2024
  • (2022)All you need is logs: improving code completion by learning from anonymous IDE usage logsProceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3540250.3558968(1269-1279)Online publication date: 7-Nov-2022
  • (2020)Adaptive Code Completion with Meta-learningProceedings of the 12th Asia-Pacific Symposium on Internetware10.1145/3457913.3457933(116-125)Online publication date: 1-Nov-2020
  • (2019)Deep Learning Based Code Completion Models for Programming CodesProceedings of the 2019 3rd International Symposium on Computer Science and Intelligent Control10.1145/3386164.3389083(1-9)Online publication date: 25-Sep-2019
  • (2019)Combining program analysis and statistical language model for code statement completionProceedings of the 34th IEEE/ACM International Conference on Automated Software Engineering10.1109/ASE.2019.00072(710-721)Online publication date: 10-Nov-2019
  • (2018)Effective API recommendation without historical software repositoriesProceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering10.1145/3238147.3238216(282-292)Online publication date: 3-Sep-2018
  • (2018)Exploring the use of automated API migrating techniques in practiceProceedings of the 15th International Conference on Mining Software Repositories10.1145/3196398.3196420(503-514)Online publication date: 28-May-2018
  • (2018)Programming not only by exampleProceedings of the 40th International Conference on Software Engineering10.1145/3180155.3180189(1114-1124)Online publication date: 27-May-2018
  • (2018)On the reaction to deprecation of clients of 4 + 1 popular Java APIs and the JDKEmpirical Software Engineering10.1007/s10664-017-9554-923:4(2158-2197)Online publication date: 1-Aug-2018
  • (2016)An exploratory study on change suggestions for methods using clone detectionProceedings of the 26th Annual International Conference on Computer Science and Software Engineering10.5555/3049877.3049886(85-95)Online publication date: 31-Oct-2016
  • Show More Cited By

View Options

View options

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media