Pre-Implementation Method Name Prediction for Object-Oriented Programming
|Corresponding Author||Ming,Wen; Bo,Lin|
Method naming is a challenging development task in object-oriented programming. In recent years, several research efforts have been undertaken to provide automated tool support for assisting developers in this task. In general, literature approaches assume the availability of method implementation to infer its name. Methods, however, are usually named before their implementations. In this work, we fill the gap in the literature about method name prediction by developing an approach that predicts the names of all methods to be implemented within a class. Our work considers the class name as the input: The overall intuition is that classes with semantically similar names tend to provide similar functionalities, and hence similar method names. We first conduct a large-scale empirical analysis on 258K+ classes from real-world projects to validate our hypotheses. Then, we propose a hybrid big code-driven approach, Mario, to predict method names based on the class name: We combine a deep learning model with heuristics summarized from code analysis. Extensive experiments on 22K+ classes yielded promising results: compared to the state-of-the-art code2seq model (which leverages method implementation data), our approach achieves comparable results in terms of F-score at token-level prediction; our approach, additionally, outperforms code2seq in prediction at the name level. We further show that our approach significantly outperforms several other baselines.
National Natural Science Foundation of China["62002125","61932021"] ; Young Elite Scientists Sponsorship Program by CAST[2021QNRC001] ; European Research Council (ERC) under the European Union
|WOS Research Area|
Computer Science, Software Engineering
|WOS Accession No|
|ESI Research Field|
Cited Times [WOS]:0
|Document Type||Journal Article|
|Department||Southern University of Science and Technology|
1.National University of Defense Technology
2.Huazhong University of Science and Technology
3.Southern University of Science and Technology
4.University of Luxembourg
Shangwen,Wang,Ming,Wen,Bo,Lin,et al. Pre-Implementation Method Name Prediction for Object-Oriented Programming[J]. ACM Transactions on Software Engineering and Methodology,2023,32(6).
Shangwen,Wang,Ming,Wen,Bo,Lin,Yepang,Liu,Tegawendé F.,Bissyandé,&Xiaoguang,Mao.(2023).Pre-Implementation Method Name Prediction for Object-Oriented Programming.ACM Transactions on Software Engineering and Methodology,32(6).
Shangwen,Wang,et al."Pre-Implementation Method Name Prediction for Object-Oriented Programming".ACM Transactions on Software Engineering and Methodology 32.6(2023).
|Files in This Item:||There are no files associated with this item.|
|Recommend this item|
|Export to Endnote|
|Export to Excel|
|Export to Csv|
|Similar articles in Google Scholar|
|Similar articles in Baidu Scholar|
|Similar articles in Bing Scholar|
Items in the repository are protected by copyright, with all rights reserved, unless otherwise indicated.