メトリックを取得する際に、削除されたコード行と挿入 (追加)/変更されたコード行を考慮する必要がありますか? (コードのリビジョンにより、コードの一部の行を削除したと言います)
4 に答える
それは、メトリクスが何を示そうとしているかに大きく依存します。
個人的には、コードを追加した後よりも、コードを削除した後の方が、独善的で自己満足しています。しかし、そもそも「コードの行数」が特に有用な指標になるとは思いもしませんでした。そのような人物をどれだけ重視するかに注意してください。
LOC が測定すべきコードの品質と相関することはめったにありません。
たとえば、リンクされたリストを逆にする関数を作成するように求められた場合、より良い解決策は何でしょうか? キーボードで頭をつぶしたように見えるが機能する1行(Perl、私はあなたを見ています...)、またはすべてを明示的にステップスルーするために耐え難いほどの詳細に入る100行?
それともその中間?
はい。行数が重要であると考える場合、削除される行の数は重要です。
しかし、それでは、これらの行数をどのように使用するかという問題が生じます。行数が最も多い人が最も生産的であるとは言わないでください。それは確かに真実ではありません。実際、人々がコミットした行数で評価されていることを明確にすると、コミット行数を膨らませるために人々に行動を促すだけになります。
SLOC (ソフトウェア コード行) をメトリックとして使用する際の問題は、簡単にゲーム化できることです。
if( condition ){
return 1;
}
return 2;
4行だけど…
if( condition )
{
return 1;
}
else
{
return 2;
}
えーと、8行です。では、雇用主や顧客はデータをどうしようとしているでしょうか? それは実際に彼らにどれだけ伝えますか?SLOC よりもはるかに優れた指標がたくさんあります。