项目1 codestyle
项目时间:2018.10- --- 2020.1
所属公司:中软国际有限公司
项目内容:代码安全整改,根据华为制定的c/c++代码规范,通过python实现具体的检查规则来检查c/c++代码工程的代码是否符合华为制定的代码规范。
开发环境:Windows7+python3+pycharm
技术架构: ci-plugins+ cpplint + codechecker+sqlite数据库+clang编译器
负责插件框架的功能和检查规则的维护开发
为了对应个人的代码整改,插件新增了门禁功能,通过git命令,对比当前分支与merge的分支差异,获取差异文件,在进行 对应的规则检测,提升了代码整改的效率
为了用户方便配置要检查的规则,通过在网站上配置规则开关生成对应的配置文件,插件通过请求接口,下载对应的规则配置文件
对插件进行打包,发布。
遇到的问题:检查时间太长
检查规则的耗时比较久,一开始的时候,检查文件是单进程,每个文件的结果会生成一个xml结果文件,最后把所有xml合并成一个xml文件,比如检查一个LTE项目的代码工程,代码量700多万,需要几十个小时。
解决方案:采取了多进程检查和结果写入sqlite数据库措施,去掉合并结果步骤,最后运行时间降到了几个小时;
项目2 CMetric_Guard
项目时间:2019.10- --- 2020.1
所属公司:中软国际有限公司
项目内容:在Metric插件的基础上进行二次开发,对c/c++工程代码进行度量,如代码中函数的嵌套深度,函数的代码行数,函数的圈复杂度等等。
开发环境:Windows7+python3+pycharm
负责插件度量规则的开发和维护。
指导用户使用插件
解决客户使用遇到的问题,并进行修复。
插件的打包发布。