• 实验四 代码评审


    实验四代码评审


    一、实验目的
    1) 了解代码审查的含义;
    2) 掌握相关编程规范检查工具的安装与使用;

    二、实验内容及要求

       代码评审主要内容是编程规范,重构方法,架构设计,性能安全,日志,可读性,扩展性等问题。通过代码评审可查找和修复引入到开发阶段的应用程序的错误,提高软件的整体素质和开发者的技能。代码评审的作用和意义已在很多技术团队内达成共识,可是很多时候并未被有效执行,甚至被认为是一项费时费力的工作。借助一些工具可以更容易,更有效率地来进行Code Review。

    1、以小组形式,针对前面“实验一”中所完成的代码,进行代码评审(走查),重点检查以下情况。你也可有查询相关材料,建立更细化的检查清单(check list)

    - 程序是否能正常工作,代码是否实现预期的功能,逻辑是否正确。

    - 代码是否遵循的编程规范

    - 代码是否尽可能的模块化

    - 所有的数据输入是否都进行了检查

    - 是否有注释,并且描述了代码的意图

    - 代码的可理解性和可测试性

    2、按“实验二”的分组方式,两人一组随机分配另一组的代码作为本组评审和分析的对象

    三、实验过程

      被评审小队31组信息:

      储兆强 https://www.cnblogs.com/chuzhaoqiang/

      蒋坤 https://www.cnblogs.com/jk521/

      四则运算 https://github.com/chuzhaoqiang/czq

      仓库截图:

      运行仓库中代码:

      运行报错 参数 ‘a’ 重新定义

      接下来进行代码审查工作

    1)配置代码审查工具

      被评审小组的代码采用C++语言编写,所以本小队采用的代码审查工具为Cpplint。

      Cpplint是Google开发的一个C++代码风格检查工具并且是一个开源可下载脚本,具体下载链接在:

      https://github.com/google/styleguide/blob/gh-pages/cpplint/cpplint.py

      Cpplint是一个使用python2.X版本写的脚本,所以执行的时候完美兼容应是在python2.X版本上面,建议安装python2.7由于本小队的python版本为3.X,所以在执代   码审查时出现了一些异常,下文中将给出异常及解决方法。

    1、在链接处下载好Cpplint文件

      Cpplint文件打开如下

     

    2、将Cpplint文件、对应审查文件放置到与python程序同一目录下

     

     

    3、在命令行(cmd)中执行相应命令

     

      进入对应目录后使用python cpplint.py +文件名的形式执行审查脚本

    2)使用脚本对代码进行分析,记录结果如下:

     

    3)对工具执行结果进行分析及建议

      0行:  No copyright message found.

      未声明版权信息;应有一行申明版权

     

      9行:  Found C system header after C++ system header.

      在C++头文件后找到C语言头文件;正确顺序应为:.hcc++,其他。

      头文件声明顺序有时会影响冲突内容,以先声明的为主

     

      301行:  Consider using rand_r(...) instead of rand(...) for improved thread safety.

      考虑使用rand_r)而不是rand以此提高线程安全性

    程序中还警告了缩进问题,如下:

     

    4)通过github issues向项目维护者提交问题(issue)截图如下:

     

     

    5)记录总结实验过程中遇到的问题和解决过程

      1Cpplint.py脚本提示中文注释警告

     

     

      使用命令-readability/utf8 过滤该警告

    2:置信度不同会影响警告数量,选用合适的置信度

      使用命令 --verbose=1-5)选择置信度

    四、实验小结

      在这次实验中涉及到代码规范及审查的内容,在对实验的准备工作中我了解到了GOOGLE对于代码风格的规范,对我以后在代码方面的书写有很大帮助,明确并统一代码风格在书写代码时是很有必要的;在实验过程中接触到了代码审查工具Cpplint,让我以后对于代码的书写有了自检的可能,并且初步熟悉了Cpplint的使用和一些相关命令。

  • 相关阅读:
    vue app项目 第一天 基本架构和路由配置
    uni-app真机调试报错request:fail abort解决方法
    C#中的虚函数virtual
    ASP.NET Core中返回 json 数据首字母大小写问题
    ASP.NET Core中使用Cache缓存
    ASP.NET Core WebApi使用ActionFilterAttribute过滤器
    ASP.NET Core WebApi使用JWT认证
    微信小程序自动识别收货地址
    开发常用网站
    微信小程序自定义导航栏组件
  • 原文地址:https://www.cnblogs.com/letusrushb/p/12878083.html
Copyright © 2020-2023  润新知