zoukankan      html  css  js  c++  java
  • checkstyle简单使用说明

    checkstyle对检查代码规范问题的总结,虽然还不够只能,但已经比较强大。
    1.Cyclomatic Complexity is X (max allowed is X).
    问题说明:圈复杂度过高。所反映的是“判定条件”的数量。圈复杂度大说明程序代码可能质量低且难于测试和维护。
    修改建议:降低判定条件的数量。对方法进行拆分。


    2.Nested if-else depth is X (max allowed is X).
    问题说明:if-else嵌套太多
    修改建议:把嵌套的逻辑用一个分支或多个分支来实现


    3.Line matches the illegal pattern 'X'.
    问题说明:含有非法字符,一般是system类的东西,程序提交时进行删除。


    4.Must have at least one statement
    问题说明:空语句。必须添加业务逻辑。有时每行后不小心添加一个【;】,或者异常处理没有进行。


    5.Empty statement
    问题说明:空语句。必须添加业务逻辑。


    6.Literal Strings should be compared using equals(), not 'X'.
    问题说明:字符串比较不能用==,用equals


    7.switch without "default" clause.
    问题说明:switch语句判断没有default的情况处理。


    8.Found duplicate of X lines in X, starting from line X
    问题说明:包含有重复的语句,应该提取公共方法。


    9.Assignment of parameter 'X' is not allowed.
    问题说明:不允许对函数的参数进行修改。


    10.'X' is a magic number.
    问题说明:对于直接用代码中的数字,进行常量的定义。


    11.Missing a Javadoc comment.
    问题说明:缺少javadoc的注释。


    12.Expected X tag for 'X'.
    问题说明:注释中缺少对变量,异常,返回值的说明


    13.Name 'X' must match pattern 'X'.
    问题说明:变量不符合命名规则


    14.其他的都比较好理解。对于类,方法长度的控制,注释中各参数的说明等。
    问题说明:比较难于修改的为圈复杂度过高,以及嵌套if-else的问题,需要根据实际的业务逻辑进行拆分方法,并进行方法参数的传递。
    而对于圈复杂度过高,判断较复杂(if -elseif -elseif ...,switch case较多的判断)修改时还没有合适的方式。

  • 相关阅读:
    处处留心皆学问,世事如棋局局新…
    【转载】2017 软件测试行业现状调查报告_From_51testing_On_20180625
    Hello World In Go ...
    C# 易错题整理
    C# 函数
    C# 哈希表,队列,栈
    C# 数组,集合,泛型集合
    C# 如何生成验证码
    C# 年月日时间题+Timespan
    闰年的一个BUG
  • 原文地址:https://www.cnblogs.com/pureEve/p/6667447.html
Copyright © 2011-2022 走看看