是否存在涵盖变量范围的代码度量标准

krm*_*krm 8 c# c++ java metrics static-analysis

在试图概述一些遗留的C++和C#代码难以维护的难度以及向其引入错误的风险时,有人建议测量范围变量的范围或范围是有用的.代码使用了很多全局变量或广泛范围的变量,本地变量会更好.常见的情况是发现这些变量用于声明它们的几个范围级别的2或3行代码.

我知道静态代码分析工具通常会尝试量化耦合和内聚,但有没有更具体的测量变量/数据范围?

gef*_*fei 2

是的,这是静态分析的标准技术。这称为变量活性分析。本书中介绍的例子就是做这样的分析。

来自维基百科关于它的文章

在编译器理论中,活动变量分析(或简称活动分析)是编译器执行的经典数据流分析,用于计算每个程序点在下次写入之前可能读取的变量,即在该程序点中活动的变量。从每个程序点退出。

简单地说:如果变量包含将来可能需要的值,则该变量是活动的。