计算机工程
計算機工程
계산궤공정
COMPUTER ENGINEERING
2014年
10期
66-70
,共5页
代码推荐%Eclipse插件%动态分析%抽象语法树%模拟运行%异常处理
代碼推薦%Eclipse插件%動態分析%抽象語法樹%模擬運行%異常處理
대마추천%Eclipse삽건%동태분석%추상어법수%모의운행%이상처리
code recommendation%Eclipse plug-in%dynamic analysis%abstract syntax tree%simulated execution%exception handling
针对现有基于静态分析的JavaScript代码推荐技术准确度低且响应速度较慢的问题,提出一种基于动态分析的JavaScript代码提示方法,并设计基于Eclipse插件的代码推荐工具。采用事先建模的方法保存模拟运行环境,并且对上下文对象建立特征索引。同时在用户代码抽象语法树的基础上进行代码分块,按程序分块顺序对用户代码进行模拟执行,利用对象之间的相似度在用户运行时修正运行变量,并对模拟执行时产生的异常进行处理,实现针对用户代码的动态分析JavaScript代码提示。实验结果表明,与现有使用静态分析方法的JavaScript代码推荐技术相比,该方法具有更高的可推荐性和更快的响应速度。
針對現有基于靜態分析的JavaScript代碼推薦技術準確度低且響應速度較慢的問題,提齣一種基于動態分析的JavaScript代碼提示方法,併設計基于Eclipse插件的代碼推薦工具。採用事先建模的方法保存模擬運行環境,併且對上下文對象建立特徵索引。同時在用戶代碼抽象語法樹的基礎上進行代碼分塊,按程序分塊順序對用戶代碼進行模擬執行,利用對象之間的相似度在用戶運行時脩正運行變量,併對模擬執行時產生的異常進行處理,實現針對用戶代碼的動態分析JavaScript代碼提示。實驗結果錶明,與現有使用靜態分析方法的JavaScript代碼推薦技術相比,該方法具有更高的可推薦性和更快的響應速度。
침대현유기우정태분석적JavaScript대마추천기술준학도저차향응속도교만적문제,제출일충기우동태분석적JavaScript대마제시방법,병설계기우Eclipse삽건적대마추천공구。채용사선건모적방법보존모의운행배경,병차대상하문대상건립특정색인。동시재용호대마추상어법수적기출상진행대마분괴,안정서분괴순서대용호대마진행모의집행,이용대상지간적상사도재용호운행시수정운행변량,병대모의집행시산생적이상진행처리,실현침대용호대마적동태분석JavaScript대마제시。실험결과표명,여현유사용정태분석방법적JavaScript대마추천기술상비,해방법구유경고적가추천성화경쾌적향응속도。
Aiming at the problem of low precise and slow response in the state of JavaScript code recommendation technology,this paper introduces a JavaScript code recommendation method based on dynamic analysis and implements a code recommendation plug-in for Eclipse. This approach builds model offline for storing the simulated runtime environment,and creates indexes for all objects in the environment. It simulates executing user code, while applying abstract syntax tree of user code for blocking and updating undefined variables at runtime,to achieve a JavaScript code recommendation tool based on dynamic analysis. Compared with current code proposal tools with static analysis, experiments show the tool improves both the precise and response time.