【问题标题】:What should be the range of cyclomatic complexity for JAVAJAVA的圈复杂度范围应该是多少
【发布时间】:2013-06-20 12:23:01
【问题描述】:

我想知道圈复杂度的标准范围应该是多少?

它取决于语言或平台还是对所有人都通用?

我正在使用 State of Flow - EclipseMetrics,它是一个 Eclipse 插件,它在构建周期为您的代码计算各种指标,并通过“问题”视图警告您每个指标的“范围违规”。

【问题讨论】:

    标签: java android cyclomatic-complexity


    【解决方案1】:

    尽可能低,就像任何其他代码一样。 一般建议圈复杂度保持在5以下。

    实际上,说起来容易做起来难。祝你好运!

    【讨论】:

      【解决方案2】:

      我已经参考了这个链接 - http://www.javaworld.com/community/node/1005

      Cyclocmatic complexity = Number of decision points + 1
      

      决策点可能是您的条件语句,例如 if、if ... else、switch、for 循环、while 循环等。

      下表描述了应用程序的类型。

      圈复杂度在于 1 – 10  被视为 正常 应用程序

      圈复杂度在于 11 – 20中等应用程序

      圈复杂度在于 21 – 50风险应用程序

      圈复杂度在于超过 50 个不稳定应用程序

      【讨论】:

        【解决方案3】:

        此问题与您的环境无关。无论您是为 android 还是 Java EE 开发都没有关系。

        cyclomatoc 复杂性只会帮助您保持代码的可维护性。计算机复杂度高没有问题,但是复杂度太高你就看不懂你的代码。

        正如 Joris 所说,5 作为一个限制值是可以的,但实际上有时很难达到。

        【讨论】:

          【解决方案4】:

          圈复杂度不依赖于平台或语言。 (参见圈复杂度的定义)

          它还取决于您必须解决的任务的内在复杂性。你的代码的复杂度不能低于任务的复杂度,否则代码会被简化,会遗漏一些东西。

          您通常可以通过重构来降低特定方法的圈复杂度。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2015-12-01
            • 1970-01-01
            • 2012-07-10
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多