美文网首页
圈复杂度度量

圈复杂度度量

作者: 楚秀才 | 来源:发表于2017-03-06 23:36 被阅读0次

在C/C++下强烈推荐 CCM ,优点如下:

  1. 配置文件是类xml格式,参数很少,非常容易配置
  2. 可以按目录、文件、函数来设置排除项,对有些函数来说,比如switch下有多个case而且每个case的逻辑都非常简单,可读性本身就很高的情况下可以直接排除
  3. 可以设置只统计 top N 的函数,一般我设置 top 30,圈复杂度的度量只需要关注最高的这部分函数就可以,识别出来并重构,然后看新的 top 30……
  4. Jenkins 插件,很容易集成到 CI 中

最大的缺点是只能在windows下使用,不能跨平台……


有一些圈复杂度的工具,我觉得不太好,不知道作者为什么要这么设计功能,比如:

  • 统计类/包的复杂度
    完全没有必要,圈复杂度的定义就是针对函数的,统计类或者包的圈复杂度没有任何意义

  • 统计新增代码的复杂度
    逻辑是已经写好的代码就不管了,新增的代码要求高一点,不能理解

相关文章

  • 圈复杂度度量

    在C/C++下强烈推荐 CCM ,优点如下: 配置文件是类xml格式,参数很少,非常容易配置 可以按目录、文件、函...

  • 程序复杂度之圈复杂度

    圈复杂度(Cyclomatic complexity)也称为条件复杂度或循环复杂度,是一种软件度量,是由Thoma...

  • 复杂度分析

    为什么需要复杂度分析? 大O复杂度表示法 时间复杂度分析 常见复杂度量级 复杂度量级简单说明 空间复杂度 时间复杂...

  • 数据结构与算法(2):复杂度分析

    一、什么是复杂度分析? 二、时间复杂度: 复杂度量级大致分为两类:多项式量级和非多项式量级上面的复杂度量级中非多项...

  • 算法复杂度

    算法的复杂度是以什么来度量的? 算法的复杂度是以时间复杂度和空间复杂度来计算的。 ①算法的时间复杂度 ...

  • 算法复杂度量级

    广义上讲,数据结构就是指一组数据的存储结构。算法就是操作数据的一组方法。 数据在内存中是呈线性排列的,但是我们也可...

  • 算法的时间复杂度与空间复杂度

    时间复杂度:对一个算法在运行过程中渐进时间复杂度,反映趋势,T(n) = O(fn()) 来定义。 时间复杂度量级...

  • 看动画轻松理解时间复杂度(二)

    上篇文章讲述了与复杂度有关的大 O 表示法和常见的时间复杂度量级,这篇文章来讲讲另外几种复杂度: 递归算法的时间复...

  • 笔记之算法

    本章内容:算法的定义,特性,算法设计的要求,算法效率的度量方法,算法时间复杂度,算法空间复杂度 一.算法基础 1....

  • 时间复杂度和空间复杂度

    常碰到的时间复杂度 其中指数阶和阶乘阶都属于十分低效的复杂度量级,应该尽量避免。 下面这段代码的时间复杂度为log...

网友评论

      本文标题:圈复杂度度量

      本文链接:https://www.haomeiwen.com/subject/pmrpgttx.html