私は最近、C/C++ と Java の両方を含むコード ベース用のCoverity Preventの代替案について尋ねられました。もちろん、Java 側では、Findbugs (コンパイル済みコード分析) や PMD (静的コード分析) などの無料ツールを利用できます。これらは非常に強力であり、特に IDE (これも無料です) との統合を調査し始める場合には有効です。
ただし、さまざまなコンパイラ、アーキテクチャなどを使用して C/C++ の領域に移行し始めると、事態は危険です。
Findbugs と PMD の両方を含む、Java 側のさまざまなツールを提案しました。私が探しているのは、次のメトリックを使用することを検討した場合の C/C++ 側の最適なオプションです。
- 価格: 無料の方が優れていますが、よりお得です。ただし、コード行ごとに課金する価格モデルは恐ろしいものです。
- 機能セット: このツールは私の生活をどのように改善しますか? チェックインする前、コードを出荷する前などに、どのような方法で間違いを検出しますか?
- ユーザビリティ: デスクでツールを使用できますか? レポートや調査結果を共有できますか? このツールを Fogbugz (私のグループで使用しています) と統合できますか? このツールを CruiseControl (または同等のもの) に統合できますか?
究極のツールは、Findbugs と PMD を同じ機能セットで組み合わせたのと同じくらい便利で使いやすく、1 シートあたり 0 ドルで提供されるものです。