zoukankan      html  css  js  c++  java
  • Sonar代码质量管理

    Sonar 为代码的质量管理提供了一个平台,对传统的代码静态检测如 PMD、FindBugs 等工具进行整合,是目前最强大的代码质量管理工具之一。

    • 代码层面影响的质量和效率

    代码内在质量的七个维度

    编码规范:是否遵守了编码规范,遵循了最佳实践

    潜在的BUG:可能在最坏情况下出现问题的代码,以及存在安全漏洞的代码

    文档和注释:过少(缺少必要信息)、过多(没有信息量)、过时的文档和注释

    重复代码:违反Don‘t repeat Yourself原则

    复杂度:代码结构太复杂、难以理解、测试和维护

    测试覆盖率:编写单元测试,特别是针对复杂代码的测试覆盖是否足够

    设计与架构:是否高内聚、低耦合、依赖最少

    大部分的缺陷都是在编码阶段引入的,在测试阶段才能够发现这些缺陷,缺陷发现的越晚,缺陷的修复成本越高

    • 静态代码扫描原理和扫描工具

    什么是静态代码扫描

    静态扫描是指在不运行代码的方式下,通过词法分析、语法分析、抽象语法分析等技术对程序代码进行扫描,

    验证代码是否满足规范性、安全性、可靠性、可维护性等指标的一种代码分析技术

    静态代码扫描会出现什么样的问题?

    如果有两个代码段都大于10行会被认定为重复代码块

    1、除了空白和注释之外,两个代码重复10行及以上

    2、即时代码段内的标识符、常量值、类型、代码格式、注释不同,两个机构以及语法相同的代码重复10行及以上

    3、复制的代码段进行进一步的修改,例如修改、添加或者删除语句,修改后有大于或等于10行的重复

    4、两个大于等于10行的代码段执行相同的计算,但通过不同的语法变体实现

    1. 常见的静态代码分析工具

     

     SonarQube

    SonarQube 是一款用于代码质量管理的平台,它主要用于管理源代码的质量。 通过插件形式,可以支持很多代 码语言,比如 java, C#, go,C/C++, PL/SQL, Cobol, JavaScrip, Groovy 等。sonar还可以通过 PMD,CheckStyle,Findbugs等等代码规则检测工具来检测你的代码,帮助你发现代码的漏洞,Bug,异味等信息。

     

  • 相关阅读:
    【1】windows下IOS开发基础环境搭建
    【oracle常见错误】oracle监听程序配置/“ORA-12541: TNS: 无监听程序”
    【oracle】oracle REGEXP_SUBSTR分割字符串
    【Oracle安装卸载】oracle卸载
    【oracle】一些的常用命令
    oracle备份与还原(导入导出)
    oracle导入时提示IMP-00010:不是有效的导出文件,头部验证失败
    oracle表空间扩容
    oracle实现like多关键字查询
    __builtin_ _Find_first()
  • 原文地址:https://www.cnblogs.com/qq909283/p/15561224.html
Copyright © 2011-2022 走看看