基本信息来源于合作网站,原文需代理用户跳转至来源网站获取       
摘要:
现代软件开发大量依赖类库以及第三方软件框架和开发,为此软件开发者经常需要寻找能够解决特定问题的应用程序编程接口API并通过示例代码学习相关API的使用方式.然而,由于开发者的问题描述与相关的API及其使用代码之间的词汇上经常存在差异,因此直接的代码搜索效果往往不好.Stack Overflow等众包问答网站上存在着很多开发问题及建议解决方案,其中也会包含一些API等代码元素,可以成为问题描述和代码内容之间匹配的桥梁.基于这一思想,提出并实现一种基于众包问答信息的API使用代码搜索方法.该方法首先借助于众包问答信息将问题描述对应到相关的代码元素上,并生成一种包含结构信息的代码骨架,然后基于代码骨架对代码库(例如开源项目代码)进行搜索和匹配,从而生成搜索结果.为了验证方法的有效性,收集了Stack Overflow上的137多万条问答信息以及GitHub上的3亿行Java源码,并针对30个与API相关的问题进行了实验验证.结果表明,96.6%的问题能在前十个结果中找到正确答案,有40%的问题能在第一个结果中找到正确答案,并且所有问题能在2 s内返回结果.
推荐文章
基于信息技术的网络众包平台开发与研究
众包
项目管理
遗传算法
众包平台
基于多Agent的众包任务推荐系统设计
多Agent
众包任务
推荐系统
系统设计
仿真
NetLogo5.0.5
空间众包中的位置隐私保护技术综述
空间众包
隐私保护
k-匿名
差分隐私
基于改进粒子群算法的空间众包任务分配模型
空间众包
任务分配
MQTA问题
SCTAM_PSO
内容分析
关键词云
关键词热度
相关文献总数  
(/次)
(/年)
文献信息
篇名 基于众包问答信息的API使用代码搜索
来源期刊 计算机应用与软件 学科 工学
关键词 代码搜索 代码特征提取 文本摘要
年,卷(期) 2018,(7) 所属期刊栏目 软件技术与研究
研究方向 页码范围 43-51
页数 9页 分类号 TP3
字数 9650字 语种 中文
DOI 10.3969/j.issn.1000-386x.2018.07.008
五维指标
作者信息
序号 姓名 单位 发文数 被引次数 H指数 G指数
1 赵文耘 复旦大学软件学院 154 1327 20.0 28.0
2 李宇琨 复旦大学软件学院 1 1 1.0 1.0
传播情况
(/次)
(/年)
引文网络
引文网络
二级参考文献  (13)
共引文献  (5)
参考文献  (4)
节点文献
引证文献  (1)
同被引文献  (0)
二级引证文献  (0)
1994(1)
  • 参考文献(0)
  • 二级参考文献(1)
2002(1)
  • 参考文献(0)
  • 二级参考文献(1)
2005(1)
  • 参考文献(0)
  • 二级参考文献(1)
2006(2)
  • 参考文献(0)
  • 二级参考文献(2)
2009(2)
  • 参考文献(1)
  • 二级参考文献(1)
2011(2)
  • 参考文献(0)
  • 二级参考文献(2)
2012(1)
  • 参考文献(0)
  • 二级参考文献(1)
2014(2)
  • 参考文献(0)
  • 二级参考文献(2)
2015(1)
  • 参考文献(0)
  • 二级参考文献(1)
2016(2)
  • 参考文献(1)
  • 二级参考文献(1)
2017(2)
  • 参考文献(2)
  • 二级参考文献(0)
2018(0)
  • 参考文献(0)
  • 二级参考文献(0)
  • 引证文献(0)
  • 二级引证文献(0)
2019(1)
  • 引证文献(1)
  • 二级引证文献(0)
研究主题发展历程
节点文献
代码搜索
代码特征提取
文本摘要
研究起点
研究来源
研究分支
研究去脉
引文网络交叉学科
相关学者/机构
期刊影响力
计算机应用与软件
月刊
1000-386X
31-1260/TP
大16开
上海市愚园路546号
4-379
1984
chi
出版文献量(篇)
16532
总下载数(次)
47
总被引数(次)
101489
  • 期刊分类
  • 期刊(年)
  • 期刊(期)
  • 期刊推荐
论文1v1指导