コメント率

プログラムの納品時などにコメント率を計算することがあった。考えてみると、ソースコードのコメント率というものの定義がはっきりしない。Javaなら"/*"から"*/"までと"//"から行末がコメントだが、ここでいう『コメント率』は、プログラムを読みやすくするための情報のはずで、それならば、インデントのための空白やタブ文字とか、演算子の前後の空白、改行文字もコメントに含まれてよいはず。
そうすると、ソースコードからコメント部分と文法的に余計な空白文字(isspace()がTrueになる文字?)を除いたプログラムのサイズ(バイト数?)を分子にし、作成したソースコードのサイズを分母とした値というのは、どうだろうか?
コメント率を書かせる側にしてみると、一般的に言って、コメント率が低いソースコードは、メンテナンスしにくい傾向があるので、コメント率はあくまでも目安で、実際にソースコードを見てみないと、メンテしやすくなっているのかどうかはわからないことも承知しているはず。そうすると、納品時に算出するコメント率というものが何のためにあるのかよくわからなくなる。どうせ中身を見てみないとわからないのだったら、それをみてメンテしやすい構造になっているか判断して、検収の判断材料にすればよいから。そうすると、プログラムを作成する前に、発注側と受注側でコメントはどのようにすべきかをあらかじめ取り決めておく必要があるということになるのかな。