Keywords :
code recommendation; code retrieval; Code search; code search procedure; code snippet; find code; Code recommendation; Code retrievals; Code search procedure; Code snippet; Find code; Research communities; Search procedures; Search technique; Theoretical Computer Science; Computer Science (all); General Computer Science
Abstract :
[en] Code search is an essential task in software development. Developers often search the internet and other code databases for necessary source code snippets to ease the development efforts. Code search techniques also help learn programming as novice programmers or students can quickly retrieve (hopefully good) examples already used in actual software projects. Given the recurrence of the code search activity in software development, there is an increasing interest in the research community. To improve the code search experience, the research community suggests many code search tools and techniques. These tools and techniques leverage several different ideas and claim a better code search performance. However, it is still challenging to illustrate a comprehensive view of the field considering that existing studies generally explore narrow and limited subsets of used components. This study aims to devise a grounded approach to understanding the procedure for code search and build an operational taxonomy capturing the critical facets of code search techniques. Additionally, we investigate evaluation methods, benchmarks, and datasets used in the field of code search.
Funders :
European Research Council (ERC), under the European Union’s Horizon 2020 research and innovation programme
Fonds National de la Recherche (FNR), Luxembourg
National Research Foundation, Singapore, under its Industry Alignment Fund–Pre-positioning (IAF-PP) Funding Initiative
National Research Foundation of Korea (NRF) grant funded by the Korea government
National Natural Science Foundation of China
Natural Science Foundation of Jiangsu Province, China
Kyungpook National University Research Fund, 2020
Funding text :
This work was supported by the European Research Council (ERC), under the European Union’s Horizon 2020 research and innovation programme (grant agreement 949014); and Fonds National de la Recherche (FNR), Luxembourg, under FNR-AFR PhD/11623818 and the National Research Foundation, Singapore, under its Industry Alignment Fund–Pre-positioning (IAF-PP) Funding Initiative. Any opinions, findings and conclusions or recommendations expressed in this material are those of the author(s) and do not reflect the views of National Research Foundation, Singapore. This work was also supported by a National Research Foundation of Korea (NRF) grant funded by the Korea government (MSIT) (2021R1A5A1021944 and 2021R1I1A3048013); the National Natural Science Foundation of China (62172214); the Natural Science Foundation of Jiangsu Province, China (BK20210279). Additionally, the research was supported by Kyungpook National University Research Fund, 2020.
Scopus citations®
without self-citations
1