• CSS日食与太阳碰撞


     Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量 通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十几种编程语言的代码质量管理与检测 

    ·         Sonar可以从以下七个维度检测代码质量,而作为开发人员至少需要处理前5种代码质量问题 

    1. 不遵循代码标准 sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具规范代码编写 

    2. 潜在的缺陷 sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具检测出潜在的缺陷

    3. 糟糕的复杂度分布 文件、类、方法等,如果复杂度过高将难以改变,这会使得开发人员难以理解它们 且如果没有自动化的单元测试,对于程序中的任何组件的改变都将可能导致需要全面的回归测试 

    4. 重复 显然程序中包含大量复制粘贴的代码是质量低下的,sonar可以展示源码中重复严重的地方 

    5. 注释不足或者过多 没有注释将使代码可读性变差,特别是当不可避免地出现人员变动时,程序的可读性将大幅下降 而过多的注释又会使得开发人员将精力过多地花费在阅读注释上,亦违背初衷 

    6. 缺乏单元测试 sonar可以很方便地统计并展示单元测试覆盖率 

    7. 糟糕的设计  通过sonar可以找出循环,展示包与包、类与类之间相互依赖关系,可以检测自定义的架构规则 通过sonar可以管理第三方的jar包,可以利用LCOM4检测单个任务规则的应用情况, 检测耦合。

    主要特点:

    ·         代码覆盖:通过单元测试,将会显示哪行代码被选中

    ·         改善编码规则

    ·         搜寻编码规则:按照名字,插件,激活级别和类别进行查询

    ·         项目搜寻:按照项目的名字进行查询

    ·         对比数据:比较同一张表中的任何测量的趋势

    传说中的 SonarLint - 昊昊汤汤 - 昊昊汤汤

    架构图:

    传说中的 SonarLint - 昊昊汤汤 - 昊昊汤汤

     

    注:上述引用自开源中国社区:代码质量管理平台 Sonar

    http://sonar.oschina.net/

    SonarLint插件的在线安装

    1.    Eclipse工具栏选择Help->Eclipse MarketPlace,如下图所示:

    传说中的 SonarLint - 昊昊汤汤 - 昊昊汤汤

    2.    弹出EclipseMarketPlace界面,在Find栏输入sonar就可以搜索出sonar相关的插件,选择SonarLint2.0.0,Install->Confirm->选择同意协议->Finish,如下图所示:

    传说中的 SonarLint - 昊昊汤汤 - 昊昊汤汤
    传说中的 SonarLint - 昊昊汤汤 - 昊昊汤汤
    传说中的 SonarLint - 昊昊汤汤 - 昊昊汤汤

    3.    3

    安装成功后,会弹出“Software Updates”界面提示需要重启Eclipse使安装生效,点击“Yes”,重启之后就可以使用了,如下图所示

     

    传说中的 SonarLint - 昊昊汤汤 - 昊昊汤汤

     

     

    SonarLint的使用

    1.  Eclipse工具栏选择Window->Show View->other,如下图所示:

    传说中的 SonarLint - 昊昊汤汤 - 昊昊汤汤

    2.  弹出“Show View”界面,输入Sonar,选择“SonarLintIssues”点击“OK”,如下图所示:

    传说中的 SonarLint - 昊昊汤汤 - 昊昊汤汤

    3.  打开需要进行代码审查的java或js文件,SonarLint将会自动进行代码审查,在控制台输出审查结果,如下图所示:

    传说中的 SonarLint - 昊昊汤汤 - 昊昊汤汤

    问题级别

    传说中的 SonarLint - 昊昊汤汤 - 昊昊汤汤

    一般情况下我们需要确保 不出现次要(包括次要)以上级别的错误。

     

    4.  SonarLint默认在打开文件的时候自动进行代码审查。如果不想使用自动审查,设置方法:右键单击项目->Properties->SonarLint->取消“Run SonarLint automatically”->Apply->OK,如下图所示:

     

    传说中的 SonarLint - 昊昊汤汤 - 昊昊汤汤

     

    5.  手动审查:右键审查文件->SonarLint->Analyze分析文件,如下图所示:

    传说中的 SonarLint - 昊昊汤汤 - 昊昊汤汤
    传说中的 SonarLint - 昊昊汤汤 - 昊昊汤汤

    6.  双击控制台的审查结果,可以自动定位到具体被审查内容的位置。如果修改代码,控制台将会自动刷新审查结果,如下图所示:

    传说中的 SonarLint - 昊昊汤汤 - 昊昊汤汤

    7.      右键审查结果,选择“Rule description”,查看针对单个问题的分析及改进建议,如下图所示:

    传说中的 SonarLint - 昊昊汤汤 - 昊昊汤汤
    传说中的 SonarLint - 昊昊汤汤 - 昊昊汤汤
  • 相关阅读:
    ZOJ 3018
    poj2464
    Gauss
    【C】关于内存地址
    【C】typedef与define的区别
    C位移操作
    操作系统使用批处理文件更改网络配置
    【Linux】查看某个进程的线程数量(转)
    数据结构快速排序
    C++Explanation of ++val++ and ++*p++ in C
  • 原文地址:https://www.cnblogs.com/Survivalist/p/8969341.html
Copyright © 2020-2023  润新知