




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
代碼搜索技術(shù)的研究和實(shí)踐Programming
ishard…?
Programming
is
largelyamanualeffort,
which
is
tediousandtime
consuming.?
Developersoftenwonderwhatcodetowriteinorder
to
complete
aprogramming
task?
Unfamiliar
problems?
Unfamiliar
APIs?
…?
Inasurvey
conductedatMicrosoft,
67.6%respondents
mentionedthattheyencounteredproblemsinlearning
APIs.(M.P.
Robillard,“Whatmakes
APIshard
to
learn?Answersfrom
developers,”
IEEE
Softw.,
vol.
26,no.
6,
pp.27–34,
2009)?
Vision:Improving
Developer
ProductivitybyCode
SearchSearching
forAPIUsageQuestion:
how
to
reuse
an
API?Ourwork:
Recommending
sample
codeabout
theAPI
usage?
Extract
API
usage
informationfromasoftware
repository?
SupportC/C++/C#/Java/JavaScriptlanguages.?
Supportnative
andthird-partyAPIs.?
Supporta
varietyofdatasources(including
GitHub,
MSDN,andMicrosoftinitiativeslike
Office
APIs,Azure
I
OT,UniversalWindowsPlatform,etc.)HongyuZhang,AnujJain,
Gaurav
Khandelwal,Chandrashekhar
Kaushik,ScottGeandWenxiang
Hu,Bing
Developer
Assistant
–ImprovingDeveloperProductivity
by
RecommendingSampleCode,To
appear:
FSE2016,
industrytrack,Seattle,
WA,USA,
November
2016.Static
analysis
ofaprogram:?
Parse
thesourcecode
andheaderfiles
into
anAST?
Performs
anin-ordertraversal
oftheAST?
Process
eachnode
accordingto
itstype?
Challenges:?
Third-party
APIs?
Type
inference
for
weaklytypedlanguagesAnExampleofanASTExtractedAPIUsageData?
We
construct
alarge-scalecodebaseby
crawling
projectsfromMSDN
andGitHub:
65,253projects,
437
GB,
3.5million
sourcecodefiles.?
Intotal,78
million
codesnippetsare
obtained.?
TheAPI
usage
dataandsamplecodeare
stored
inandmanagedbyMicrosoftAzure
Table.Thestatistics
oftheobtainedAPI
usagedataBingDeveloper
Assistant(BDA)http://aka.ms/devassistant?
Client
side:anextension
ofMicrosoftVisualStudio.?
Serverside:MicrosoftAzureservers
locatedaroundtheworld.?
TheAPIsprovidedbyIntelliSense
ofVS
triggerthebackend
BDA
service.?
Thereturnedsample
codeisdisplayedwithinVisualStudio.Technology
Transfer?
Transferred
to
Bing
DeveloperAssistant
(BDA)
in2015.?
StatusUpdates(as
ofJuly2016):?Receivedmore
than450Kdownloads???~2.1
million
queriespermonthBuild2016
presenceNewrelease
ofBDAon
July13,2016
(withC/C++
support)Availableat:http://aka.ms/devassistantVisualStudioBlogVisualC++Team
BlogCollaborators:BingTech
SegmentHyderabadVisualStudioRedmondDX
Audience
Online
EnginesRedmondSearching
for
Reusable
CodeWe
proposeCodeHow,
a
methodfor
searching
reusable
codebased
onfree-formqueries?
Given
auserquery,
CodeHow
searchescodebasesand
returns
therelevant
codesnippetsthat
match
the
query.?
Consider
bothtext
similarity
andprogramsemantics
incode
retrievalHow
to
use
SqlConnection.OpenHow
to
use
SSL.acceptHow
to
compute
MD5
HashHow
to
convert
a
string
to
int…..Open
SourceProjectsLocal
Projects?
Build
thetoolontop
of
ElasticSearch
andMicrosoftAzureQuery?
Indexed~50K
C#/Java/C++/VBprojectscollectedfromGitHuband
CodeplexCodebaseCode
SnippetsFei
Lv,
Hongyu
Zhang,Jian-guang
Lou,
Shaowei
Wang,
Dongmei
Zhang,andJianjun
Zhao,
"CodeHow:
Effective
CodeSearch
basedonAPIUnderstandingand
Extended
Boolean
Model",inProc.ASE2015,
Lincoln,Nebraska,
Nov
2015.Natural
Language
Query-
Query
Formulation?
Text
SimilarityQuery?
For
retrieving
code
snippetsthat
match
the
queryinterms
oftext
similarity?
API
Query?
Obtainthetop
kAPIs
thatare
potentiallyrelevant
to
thequery?
For
retrieving
codesnippetsthatcontaintheAPIs?
Expanded
Query:
incorporate
both
APIsimilarity
and
text
similarityNatural
Language
Query-
Retrieval?
Retrieve
code
snippets
basedon
thesimilarity
betweentheexpandedquery
qexpand
andacodesnippet
d:Thesimilarity
value
iscomputedusingExtended
Boolean
model:Fei
Lv,
Hongyu
Zhang,
Jian-guang
Lou,
Shaowei
Wang,Dongmei
Zhang,
and
JianjunZhao,
“CodeHow:
Effective
CodeSearch
basedon
APIUnderstanding
and
Extended
BooleanModel”,
Proc.
ASE’15,Lincoln,
USA,
Nov
2015.SystemStructure.
ElasticSearch(1
masterand4workers).
Azure
platformNatural
LanguageQueryQueryExamples:Enter
yourqueryhereredbl
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 兼職維修員合同范本
- 北京外墻保溫合同范本
- 包車合同范本自卸車
- 加盟服務(wù)合同范本
- 醫(yī)院用水用電合同范本
- 包干建房工程合同范本
- 保理合同范本 隱蔽型
- 單位門購(gòu)買合同范本
- 區(qū)域材料采購(gòu)合同范本
- 單位員工臨時(shí)合同范例
- 人教版一年級(jí)下冊(cè)數(shù)學(xué)第一單元單元作業(yè)設(shè)計(jì)
- 突發(fā)疾病時(shí)的安全駕駛方法
- 創(chuàng)魯班獎(jiǎng)工程條件及評(píng)審要求XX4
- 交通法規(guī)常識(shí)課件
- 北師大版數(shù)學(xué)四年級(jí)下冊(cè)簡(jiǎn)易方程練習(xí)200題及答案
- 課件:認(rèn)識(shí)鏡頭語(yǔ)言1:運(yùn)鏡方式和常用的鏡頭術(shù)語(yǔ)
- (完整版)三年級(jí)上冊(cè)口算題卡1400道
- 淘寶客服轉(zhuǎn)正述職報(bào)告
- 提升電子商務(wù)的發(fā)展邏輯
- 提升醫(yī)療質(zhì)量減少醫(yī)療糾紛
- (完整)特種設(shè)備專項(xiàng)應(yīng)急預(yù)案
評(píng)論
0/150
提交評(píng)論