1. 代码行(LOC):
代码行(LOC) 度量是代码中不是注释或空行的任何文本行,在任何情况下都是该行上语句或语句片段的数量。 LOC 显然由包含程序头文件、任何变量的声明以及可执行和不可执行语句的所有行组成。由于代码行数 (LOC) 仅计算代码的比例,因此您只能使用它来比较或估算使用相同语言并使用相同编码标准进行编程的项目。
代码行示例:
C++
void selSort(int x[], int n) {
//Below function sorts an array in ascending order
int i, j, min, temp;
for (i = 0; i < n - 1; i++) {
min = i;
for (j = i + 1; j < n; j++)
if (x[j] < x[min])
min = j;
temp = x[i];
x[i] = x[min];
x[min] = temp;
}
}
所以,现在如果 LOC 只是行数的计数,那么上面显示的函数包含 13 行代码 (LOC)。但是当忽略注释和空行时,上面显示的函数包含 12 行代码 (LOC)。
2.函数点(FP):
在函数点度量中,软件支持的功能数量和类型用于查找 FPC(函数点计数)。
函数点示例:
查看本文以获取详细示例:函数点(FP)的计算
函数点和 LOC 都是软件大小的度量单位。依赖于开发的软件的大小对于准确估计项目的工作量、成本和持续时间是必要的。大多数参数估计模型,例如构造成本模型 (COCOMO),都接受以 FP 或 LOC 形式传达的尺寸作为输入。
LOC和函数 Point的区别:
Function Point (FP) | Line of Code (LOC) |
Function Point metric is specification-based. | LOC metric is based on analogy. |
Function Point metric is language independent. | LOC metric is dependent on language. |
Function Point metric is user-oriented. | LOC metric is design-oriented. |
Function Point metric is extendible to Line of Code. | It is changeable to FP (i.e, backfiring) |
Function Point is used for data processing systems | LOC is used for calculating the size of the computer program |
Function Point can be used to portray the project time | LOC is used for calculating and comparing the productivity of programmers. |
一般来说,人们更喜欢用函数点表示的软件的功能大小有一个非常重要的原因,即使用函数点度量表示的大小在任何情况下都保持不变,无论使用哪种语言。