美文网首页钛钶维基
什么是【圈复杂度】

什么是【圈复杂度】

作者: 一俢 | 来源:发表于2019-06-21 09:55 被阅读4次

    圈复杂度(Cyclomatic complexity)是由 Thomas J. McCabe, Sr. 在1976年提出的代码复杂度的衡量标准。它是软件测试中的一个概念,它的定义:代码中与线性无关路径的数量。

    感觉好难理解,举例!如果代码中不包含控制流语句,那么这段代码的圈复杂度为 1,因为代码中只有一条路径;如果代码中包含一段条件语句(if),那么这段代码的圈复杂度为 2;如果包含两条条件语句,或者嵌套一层条件语句,那么代码的圈复杂度为 3......也就是说控制流越多情况就越复杂,它的增长可能不是线性的,这样导致测试 Case 越来越,代码也越来越难以维护。

    在日常工作中,大家为了完成复杂的逻辑,将代码的圈复杂度弄的越来越高,最终自己也难以维护这段代码,原因何在?没有思考,没有学习,我们经常说的设计模式就是为了避免这个问题。

    多思考,多改变,才能成为优秀的设计者。

    〖坚持的一俢〗

    相关文章

      网友评论

        本文标题:什么是【圈复杂度】

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