当前位置:主页 > 科技论文 > 软件论文 >

基于PMD和Jacoco的代码分析系统的设计与实现

发布时间:2024-03-31 08:19
  代码分析[Kirkov,2010]指的是对代码进行人工或是自动分析,以考察、验证代码性质的过程或活动。代码分析技术一直存在于软件发展的历史中,从最简单的编译器,再到现在各色IDE(Integrated Development Environment,集成开发环境)中提供的语法高亮提示都使用了代码分析的技术。随着软件行业的发展,自动化代码分析技术受到了越来越多的关注,也变得越来越强大,通过代码分析可以帮助开发人员开发可读性更强、更加优美的代码,也能提高系统的可靠性和可维护性。现有的代码分析工具固然强大,能够基本覆盖开发人员的代码检查需求,但是仍然存在着学习成本高、使用主观性强、难以应付大公司对高效的需求等缺点。面对大型互联网公司每天上万次代码分析的需求和保证线上代码质量的要求,本文提出了自建代码分析系统的解决方案,通过该解决方案实现统一开发人员代码分析标准、动静态结合地检查交付代码,并从设计和实现两个维度进行了阐述。针对现有的各种代码分析工具使用上学习成本高、分析标准不一致的问题,本文提出构建代码分析系统,选用PMD和Jacoco分别作为静态和动态的代码分析引擎,制定代码检查规则,对交付...

【文章页数】:72 页

【学位级别】:硕士

【部分图文】:

图2.1?PMD部分类图??2.2.2?Jacoco??

图2.1?PMD部分类图??2.2.2?Jacoco??

PMD提供了完善的代码扩展机制,可以通过xpath匹配作为规则,也可以??通过java实现PMD提供的相关的规则接口来实现。??如图2.1所示为PMD的部分类图,PMD代码分析引擎使用监听器模式,将??Java文件解析成相应的抽象语法树之后可以针对语法树各个节点进行监听。??PM....


图3.2逻辑视图

图3.2逻辑视图

展示层为面向用户的前端结果的展示部分;服务层又分为任务支持模块和任??务实行模块,其中任务支持部分为提供各种任务相关操作的接口,主要包括任务??的增删改的相关操作子模块和任务相关信息的查询子模块,代码提交平台通过任??务支持模块创建任务和查询任务执行状态、任务结果等信息,结果展示....


图3.4物理视图??如图3.4所示为系统的物理视图,系统通过Nginx代理服务器对外提供服??人口,将请求负载均到线上配置的Web机上目线上置4

图3.4物理视图??如图3.4所示为系统的物理视图,系统通过Nginx代理服务器对外提供服??人口,将请求负载均到线上配置的Web机上目线上置4

覆盖倌恩采集机器??图3.4物理视图??如图3.4所示为系统的物理视图,系统通过Nginx代理服务器对外提供服??务人口,将请求负载均衡到线上配置的Web端机器上(目前线上配置有4台??Web端机器)。Web端机器负责处理用户的结果查看请求和平台发送过来的查??询请求和任务创建请....


图3.5任务支持模块类图??任务支持模块对外提供了业务上的支持,包括前端数据展示的支持、任务的??创建和査询操作

图3.5任务支持模块类图??任务支持模块对外提供了业务上的支持,包括前端数据展示的支持、任务的??创建和査询操作

图3.5任务支持模块类图??任务支持模块对外提供了业务上的支持,包括前端数据展示的支持、任务的??创建和査询操作。如图3.5听示为任务支持模块的类图(因静态信息统计相关模??块与PMD模块类似,图中省略),任务支持模块又可以分为:??对外提供接口服务的Api层,除了提供Api服务....



本文编号:3943717

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3943717.html


Copyright(c)文论论文网All Rights Reserved | 网站地图

版权申明:资料由用户5aa8b***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com