Most software maintenance and evolution tasks require developers to understand the source code of their software systems. Software developers usually inspect class comments to gain knowledge about program behavior, regardless of the programming language they are using. Unfortunately, (i) different programming languages present language-specific code commenting notations/guidelines; and (ii) the source code of software projects often lacks comments that adequately describe the class behavior, which complicates program comprehension and evolution activities. To handle these challenges, this paper investigates the different language-specific class commenting practices of three programming languages: Python, Java, and Smalltalk. In particular, we systematically analyze the similarities and differences of the information types found in class comments of projects developed in these languages. We propose an approach that leverages two techniques, namely Natural Language Processing and Text Analysis, to automatically identify various types of information from class comments i.e., the specific types of semantic information found in class comments. To the best of our knowledge, no previous work has provided a comprehensive taxonomy of class comment types for these three programming languages with the help of a common automated approach. Our results confirm that our approach can classify frequent class comment information types with high accuracy for Python, Java, and Smalltalk programming languages. We believe this work can help to monitor and assess the quality and evolution of code comments in different program languages, and thus support maintenance and evolution tasks.


翻译:软件的维护和演变任务大多要求开发者理解软件系统的源代码。软件开发者通常检查阶级评论,以获得关于程序行为的知识,而不论其使用何种编程语言。不幸的是,(一) 不同的编程语言提供具体语言的代码,以评论批注/指南;和(二) 软件项目的源代码往往缺乏充分描述类别行为的评论,从而使得程序理解和演进活动复杂化。为了应对这些挑战,本文件调查了三种编程语言:Python、Java和Smallaltal 的不同语言的特定语言评论做法。特别是,我们系统地分析在用这些语言开发的项目的类评论中发现的信息类型之间的相似和差异。我们建议一种方法,利用两种技术,即自然语言处理和文本分析,自动确定来自类评论的不同类型信息,即,即,在课堂评论中发现具体类型的语系信息,使程序理解和演进性活动变得复杂。根据我们的知识,过去没有任何工作为这三种编程语言提供全面的分类和分类。我们的结果证实,我们的方法可以将频繁的课堂评论类型归类信息类型分类,并因此对Py 编程的编程和编程进行高精准。

0
下载
关闭预览

相关内容

《计算机信息》杂志发表高质量的论文,扩大了运筹学和计算的范围,寻求有关理论、方法、实验、系统和应用方面的原创研究论文、新颖的调查和教程论文,以及描述新的和有用的软件工具的论文。官网链接:https://pubsonline.informs.org/journal/ijoc
Python图像处理,366页pdf,Image Operators Image Processing in Python
【深度学习视频分析/多模态学习资源大列表】
专知会员服务
91+阅读 · 2019年10月16日
强化学习最新教程,17页pdf
专知会员服务
174+阅读 · 2019年10月11日
[综述]深度学习下的场景文本检测与识别
专知会员服务
77+阅读 · 2019年10月10日
机器学习入门的经验与建议
专知会员服务
92+阅读 · 2019年10月10日
【论文笔记】通俗理解少样本文本分类 (Few-Shot Text Classification) (1)
深度学习自然语言处理
7+阅读 · 2020年4月8日
Transferring Knowledge across Learning Processes
CreateAMind
27+阅读 · 2019年5月18日
计算机 | CCF推荐期刊专刊信息5条
Call4Papers
3+阅读 · 2019年4月10日
Call for Participation: Shared Tasks in NLPCC 2019
中国计算机学会
5+阅读 · 2019年3月22日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
Coursera上Python课程(公开课)汇总推荐
AINLP
8+阅读 · 2018年3月11日
【推荐】深度学习情感分析综述
机器学习研究会
58+阅读 · 2018年1月26日
Coursera上Python课程(公开课)汇总
数据挖掘入门与实战
6+阅读 · 2017年12月27日
【推荐】SVM实例教程
机器学习研究会
17+阅读 · 2017年8月26日
Arxiv
0+阅读 · 2021年9月24日
Arxiv
0+阅读 · 2021年9月23日
Arxiv
0+阅读 · 2021年9月22日
Directions for Explainable Knowledge-Enabled Systems
Arxiv
26+阅读 · 2020年3月17日
How to Fine-Tune BERT for Text Classification?
Arxiv
13+阅读 · 2019年5月14日
Arxiv
3+阅读 · 2017年12月18日
VIP会员
相关VIP内容
Python图像处理,366页pdf,Image Operators Image Processing in Python
【深度学习视频分析/多模态学习资源大列表】
专知会员服务
91+阅读 · 2019年10月16日
强化学习最新教程,17页pdf
专知会员服务
174+阅读 · 2019年10月11日
[综述]深度学习下的场景文本检测与识别
专知会员服务
77+阅读 · 2019年10月10日
机器学习入门的经验与建议
专知会员服务
92+阅读 · 2019年10月10日
相关资讯
【论文笔记】通俗理解少样本文本分类 (Few-Shot Text Classification) (1)
深度学习自然语言处理
7+阅读 · 2020年4月8日
Transferring Knowledge across Learning Processes
CreateAMind
27+阅读 · 2019年5月18日
计算机 | CCF推荐期刊专刊信息5条
Call4Papers
3+阅读 · 2019年4月10日
Call for Participation: Shared Tasks in NLPCC 2019
中国计算机学会
5+阅读 · 2019年3月22日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
Coursera上Python课程(公开课)汇总推荐
AINLP
8+阅读 · 2018年3月11日
【推荐】深度学习情感分析综述
机器学习研究会
58+阅读 · 2018年1月26日
Coursera上Python课程(公开课)汇总
数据挖掘入门与实战
6+阅读 · 2017年12月27日
【推荐】SVM实例教程
机器学习研究会
17+阅读 · 2017年8月26日
相关论文
Arxiv
0+阅读 · 2021年9月24日
Arxiv
0+阅读 · 2021年9月23日
Arxiv
0+阅读 · 2021年9月22日
Directions for Explainable Knowledge-Enabled Systems
Arxiv
26+阅读 · 2020年3月17日
How to Fine-Tune BERT for Text Classification?
Arxiv
13+阅读 · 2019年5月14日
Arxiv
3+阅读 · 2017年12月18日
Top
微信扫码咨询专知VIP会员