• 中国精品科技期刊
  • CCF推荐A类中文期刊
  • 计算领域高质量科技期刊T1类
Advanced Search
Liu Fang, Li Ge, Hu Xing, Jin Zhi. Program Comprehension Based on Deep Learning[J]. Journal of Computer Research and Development, 2019, 56(8): 1605-1620. DOI: 10.7544/issn1000-1239.2019.20190185
Citation: Liu Fang, Li Ge, Hu Xing, Jin Zhi. Program Comprehension Based on Deep Learning[J]. Journal of Computer Research and Development, 2019, 56(8): 1605-1620. DOI: 10.7544/issn1000-1239.2019.20190185

Program Comprehension Based on Deep Learning

More Information
  • Published Date: July 31, 2019
  • Program comprehension is the process of obtaining relevant information in programs by analyzing, abstracting, and reasoning the programs. It plays an important role in software development, maintenance, migration, and other processes. It has received extensive attention in academia and industry. Traditional program comprehension relies heavily on the experience of developers. However, as the scale and complexity of software continue to grow, it is time-consuming and laborious to rely solely on the developer’s prior knowledge to extract program features, and it is difficult to fully exploit the hidden features in the program. Deep learning is a data-driven end-to-end method. It builds deep neural networks based on existing data to mine the hidden features in data, and has been successfully applied in many fields. By applying deep learning technology to program comprehension, we can automatically learn the features implied in programs, which can fully exploit the knowledge implied in the program and improve the efficiency of program comprehension. This paper surveys the research work of program comprehension based on deep learning in recent years. Firstly, we analyze the properties of the program, and then introduce mainstream program comprehension models, including sequential models, structural models, and execution traces based models. Furthermore, the applications of deep learning-based program comprehension in program analysis are introduced, which mainly focus on code completion, code summarization and code search, etc. Finally, we summarize the challenges in program comprehension research.

Catalog

    Article views (2430) PDF downloads (1664) Cited by()
    Turn off MathJax
    Article Contents

    /

    DownLoad:  Full-Size Img  PowerPoint
    Return
    Return