多维度可视化统计代码行数的方法及系统技术方案

技术编号:37309349 阅读:10 留言:0更新日期:2023-04-21 22:53
本发明专利技术提供了一种多维度可视化统计代码行数的方法及系统,包括如下步骤:步骤1:维护代码库信息;步骤2:根据所述代码库信息,搭建代码统计环境;步骤3:在所述代码统计环境下,定时统计代码行数,获得代码行数统计数据;步骤4:多维度分析可视化展示所述代码行数统计数据。本发明专利技术通过定时采集代码行数信息,将采集到的信息存储到数据库中,进行多维度数据统计,计算代码总行数,并通过可视化报表,展示相关信息。关信息。关信息。

【技术实现步骤摘要】
多维度可视化统计代码行数的方法及系统


[0001]本专利技术涉及数据统计
,具体地,涉及一种多维度可视化统计代码行数的方法及系统。

技术介绍

[0002]目前已有使用代码统计工具进行自动代码统计的方式,但是没有与代码开发语言等信息结合进行多维度分析,也没有进行可视化展示,不能满足多维度分析展示整体代码变化情况的需求。
[0003]公开号为CN108446135A的专利文献公开了一种代码行数统计方法及装置,所述方法包括在满足预定的代码行数统计条件时,生成代码行数统计指令,并通过以下处理过程响应该指令:基于所述目标分支代码对应的版本树,获得所述目标分支代码的第一版本文件及第二版本文件,统计所述第二版本文件相比于所述第一版本文件的差异代码行的行数,并将统计出的代码行数与所述第二版本文件的提交人员信息进行关联。但是该专利文献统计内容较为单一,仅为结合员工信息的代码行数变化情况,没有整体进行多维度的分析,也没有可视化展示统计内容。
[0004]公开号为CN112000362A的专利文献公开了一种统计Java源文件代码行数的方法及系统,包括如下步骤:(1)当Java虚拟机开始加载类文件,实时获取已被加载的类文件数组;(2)根据目标类文件的特征参数判断已获取到的所述类文件数组中是否包含有所述目标类文件,若是,则进入步骤(3),若否,则返回步骤(1),其中所述目标类文件是需要统计代码行数的源文件编译后的类文件,所述目标类文件的特征参数被预先添加在Java虚拟机;(3)获取所述目标类文件中所有实例方法和静态方法的字节码信息,并从所述字节码信息中得到对应的行号字段值并比较出最大行号值,进而得到需要统计代码行数的源文件的代码行数。但是该专利文献仍然存在没有整体进行多维度的分析的缺陷。

技术实现思路

[0005]针对现有技术中的缺陷,本专利技术的目的是提供一种多维度可视化统计代码行数的方法及系统。
[0006]根据本专利技术提供的一种多维度可视化统计代码行数的方法,包括如下步骤:
[0007]步骤1:维护代码库信息;
[0008]步骤2:根据所述代码库信息,搭建代码统计环境;
[0009]步骤3:在所述代码统计环境下,定时统计代码行数,获得代码行数统计数据;
[0010]步骤4:多维度分析可视化展示所述代码行数统计数据。
[0011]优选的,所述步骤1包括如下步骤:
[0012]步骤1.1:维护需要统计的所述代码库信息,将所述代码库信息在系统进行注册登记;
[0013]步骤1.2:提供查询代码库信息的接口,返回需要统计代码行数的步骤1.1中所述
的代码库信息。
[0014]优选的,所述步骤1.1中,所述代码库信息包括代码库地址、账号、密码、分支、以及代码库类型。
[0015]优选的,所述步骤2包括如下步骤:
[0016]步骤2.1:根据所述代码库信息,搭建jenkins环境,以jenkins作为执行代码统计任务的载体;
[0017]步骤2.2:在步骤2.1搭建的所述jenkins环境中,集成cloc代码统计工具,使用所述cloc代码统计工具统计代码行数。
[0018]优选的,所述步骤3包括如下步骤:
[0019]步骤3.1:提供保存代码统计数据的接口,所述接口将采集日期、代码库、开发语言、代码行数以及注释数保存到数据库中;
[0020]步骤3.2:在步骤2.1中所述jenkins环境中,创建jenkins任务;
[0021]步骤3.3:在所述jenkins环境中设置步骤3.2创建的所述jenkins任务的触发周期为每天触发,持续采集代码行数。
[0022]优选的,所述步骤3.2中,所述jenkins任务通过编写jenkins pipeline脚本实现。
[0023]优选的,所所述jenkins pipeline脚本内容为:
[0024]步骤3.2.1:调用步骤1.2提供的查询代码库信息的接口,获取代码库信息;
[0025]步骤3.2.2:循环处理获取到的所有所述的代码库信息,调用jenkins pipeline的语法实现代码拉取;
[0026]步骤3.2.3:调用cloc
‑‑
json命令对拉取的代码进行代码行数的统计,指定输出为json格式的统计数据;
[0027]步骤3.2.4:将所述json格式的统计数据作为参数,调用步骤3.1提供的保存代码统计数据的接口,将相关信息保存到数据库中;
[0028]步骤3.2.5:调用jenkins pipeline的语法实现已完成处理的代码的清理工作。
[0029]优选的,所述步骤4包括如下步骤:
[0030]步骤4.1:基于步骤3获得的代码行数统计数据,进行多维度分析,得到代码总行数、整体开发语言占比以及近期代码趋势变化;
[0031]步骤4.2:使用数据可视化框架echarts,将步骤4.1得到的数据以折线图、柱状图等图形方式可视化展现出来。
[0032]优选的,所述步骤4.1中,根据代码库和代码行数进行相关排行,得到代码总行数排行和本月新增代码行数排行。
[0033]本专利技术还提供一种多维度可视化统计代码行数的系统,包括如下模块:
[0034]维护模块:维护代码库信息;
[0035]搭建模块:根据所述代码库信息,搭建代码统计环境;
[0036]统计模块:在所述代码统计环境下,定时统计代码行数,获得代码行数统计数据;
[0037]展示模块:多维度分析可视化展示所述代码行数统计数据。
[0038]与现有技术相比,本专利技术具有如下的有益效果:
[0039]1、本专利技术通过通过定时采集代码行数信息,将采集到的信息存储到数据库中,在此基础上进行多维度数据统计,进而对整体的多维度分析;
[0040]2、本专利技术的统计过程不需要人工参与,具有高效的统计效率;
[0041]3、本专利技术的统计结果能多维度进行分析,以图形化方式可视化展示,更为生动直观。
附图说明
[0042]通过阅读参照以下附图对非限制性实施例所作的详细描述,本专利技术的其它特征、目的和优点将会变得更明显:
[0043]图1为本专利技术的多维度可视化统计代码行数的方法的流程图。
具体实施方式
[0044]下面结合具体实施例对本专利技术进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本专利技术,但不以任何形式限制本专利技术。应当指出的是,对本领域的普通技术人员来说,在不脱离本专利技术构思的前提下,还可以做出若干变化和改进。这些都属于本专利技术的保护范围。
[0045]实施例1:
[0046]本实施例提供一种多维度可视化统计代码行数的方法,包括如下步骤:
[0047]步骤1:维护代码库信息,包括如下步骤:
[0048]步骤1.1:维护需要统计的代码库信息,代码库信息包括代码库地址、账号、密码、分支、以及代本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种多维度可视化统计代码行数的方法,其特征在于,包括如下步骤:步骤1:维护代码库信息;步骤2:根据所述代码库信息,搭建代码统计环境;步骤3:在所述代码统计环境下,定时统计代码行数,获得代码行数统计数据;步骤4:多维度分析可视化展示所述代码行数统计数据。2.根据权利要求1所示的多维度可视化统计代码行数的方法,其特征在于,所述步骤1包括如下步骤:步骤1.1:维护需要统计的所述代码库信息,将所述代码库信息在系统进行注册登记;步骤1.2:提供查询代码库信息的接口,返回需要统计代码行数的步骤1.1中所述的代码库信息。3.根据权利要求2所示的多维度可视化统计代码行数的方法,其特征在于,所述步骤1.1中,所述代码库信息包括代码库地址、账号、密码、分支、以及代码库类型。4.根据权利要求2所示的多维度可视化统计代码行数的方法,其特征在于,所述步骤2包括如下步骤:步骤2.1:根据所述代码库信息,搭建jenkins环境,以jenkins作为执行代码统计任务的载体;步骤2.2:在步骤2.1搭建的所述jenkins环境中,集成cloc代码统计工具,使用所述cloc代码统计工具统计代码行数。5.根据权利要求4所示的多维度可视化统计代码行数的方法,其特征在于,所述步骤3包括如下步骤:步骤3.1:提供保存代码统计数据的接口,所述接口将采集日期、代码库、开发语言、代码行数以及注释数保存到数据库中;步骤3.2:在步骤2.1中所述jenkins环境中,创建jenkins任务;步骤3.3:在所述jenkins环境中设置步骤3.2创建的所述jenkins任务的触发周期为每天触发,持续采集代码行数。6.根据权利要求5所示的多维度可视化统计代码行数的方法,其特征在于,所述步骤3.2中,所述jenkin...

【专利技术属性】
技术研发人员:李长春毛玲燕王建纲王学平
申请(专利权)人:上海宝信软件股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1