您很可能非常熟悉尝试理解别人(甚至您自己)的旧代码的感觉。六个月前这绝对是有意义的,但从那时到现在,它已经变得比地图更像“魔眼”。如果你关注今天的代码有多难理解,明天就会容易得多。认知复杂性是 Sonar 的衡量标准,可以帮助您做到这一点!本博客深入探讨了认知复杂度的计算方式以及它如何帮助您编写出色的代码!
与团队协作时,考虑您编写的代码在后续开发中的可读性非常重要。圈复杂度最初是作为一种衡量测试和维护模块控制流难易程度的方法而引入的。虽然它非常擅长评估可测试性,但其背后的数学模型在衡量可维护性方面却表现不佳。
线性代码是你的朋友。如果所有代码只是一个接一个列出的命令序列,没有任何循环或混乱,那么很容易将其牢记在心。一旦添加循环或分支代码的决策,它就会变得越来越难以理解。因此,每次执行此操作时,代码的认知复杂度分数都会增加 1。在此视频中,我们将了解引入分支和循环后分数如何累加。Sonar 可以帮助您了解代码中的复杂性,并寻求我们的重构机会。
嵌套代码更难理解,并且在嵌套代码中执行更多操作会增加将所有内容牢记在心所需的精力。
有许多旨在使代码更清晰的结构。认知复杂性评分足够智能,可以理解这些结构的好处,因此使用它们不会增加您的复杂性分数。
我们了解 Sonar 如何通过认知复杂性评分帮助用户理解复杂的代码。无论您是在 IDE 中使用 SonarLint 还是在 SonarCloud 或 SonarQube 中查看问题,您都可以看到函数中影响总体得分的每个点。
综上所述
认知复杂性为复杂性建模提供了新的视角。它产生的方法复杂度分数与开发人员对可维护性的看法非常一致。这是声纳测量认知复杂性如何帮助您编写易于理解的代码的简要概述。你的团队和你的未来都会感谢你!
Copyright © 2022 All Rights Reserved. 地址:上海市浦东新区崮山路538号808 苏ICP123456 XML地图