zoukankan      html  css  js  c++  java
  • 圈复杂度

    一、现象

    1. 代码设计不规范。

    当项目规模达到一定的程度,比如达到十万行的代码量。那么项目肯定存在有些类特别大,方法特别多、特别长。

    以上因素会导致什么后果呢?

    • 一个类没有做到单一指责,后期对这个类改动会导致其他功能出现Bug。
    • 代码阅读性较差,维护困难。

    2. 没有一个准确的标准去衡量代码结构复杂的程度。

    各个公司都会有自己的规范,但是开发中很少人能够去完全遵循规范。而且没有一个明确的标准去衡量代码的复杂程度,而且人工去检测代码的复杂程度是很繁琐的。因此我们急需一个标准去检测代码结构复杂的程度,而圈复杂度这个技术就能够很好的去衡量代码的复杂程度。

     

    二、圈复杂度的定义

    圈复杂度是用来衡量一个模块判定结构的复杂程度,数量上表现为独立路径的条数。而独立路径就是在控制流程图中从起点到终点的一条回路。
    1.1 控制流图(CFG, Control flow graph)也叫控制流程图。是一个过程或程序的抽象表现。常以数据结构链的形式表示。

    圈复杂度高在代码中的表现形式:在一段代码中含有很多的 if / else 语句或者其他的判定语句(if / else , switch / case , for , while , | | , ? , …)。

     

    详细:传送门

     

     

  • 相关阅读:
    475. Heaters
    69. Sqrt(x)
    83. Remove Duplicates from Sorted List Java solutions
    206. Reverse Linked List java solutions
    100. Same Tree Java Solutions
    1. Two Sum Java Solutions
    9. Palindrome Number Java Solutions
    112. Path Sum Java Solutin
    190. Reverse Bits Java Solutin
    202. Happy Number Java Solutin
  • 原文地址:https://www.cnblogs.com/zhangzhicheng/p/6847658.html
Copyright © 2011-2022 走看看