明日にはでっかい太陽が昇るかもしれません。

「覚悟」とは!! 暗闇の荒野に!!進むべき道を切り開く事だッ!

コードの品質を自動的に評価するために

コーディングにおける、現場の課題としては、おそらくここ数十年変わっていないと思うのですが、コードの品質をどのように担保するのかということになると思っています。

ここでいうコードの品質とは、動作上の確かさではなく、コード自体の保守性などのことです。

私の職場では、

  1. コードレビュー
  2. 静的解析

を行っていますが、実際には、

  1. コードレビューに時間をとれない。また、十分な有識者が集められない。
  2. 静的解析のツールが貧弱でほぼ無意味な指摘しかしない。

といった問題があります。

静的解析ツールは商用なんですけれどもね。。。

ただ、現在使用している静的解析ツールは複雑度などの「人の見易さ」については評価してくれないため、その点を安易に導入する手段を探してみました。

複雑度が下がれば、コードレビューにおける問題点もある程度緩和できると思うので。(または、重点的にレビューすべき箇所が自動的に特定される)


とりあえず、ぱっと見つかったのは、 SourceMonitor V3.5 なのですが、これはWindows用だったことと、以前、超巨大プロジェクトに対して実施したときに一部コードが正しく評価されていなかったっぽいため、評価対象外にしたい。

CIに組み込むことも考慮して、Linux上で動作するもの限定で探すと、

  1. C and C++ Code Counter | SourceForge.net

なんてものが見つかったけど、更新が1年以上止まっている。。。

もしかして、世界的には複雑度によるコードの評価はあまり有効と考えられていないのか??

それとも、「都度しっかり見ていれば、複雑度なんて上がらねーよ!!」ということなのだろうか?