酢ろぐ!

カレーが嫌いなスマートフォンアプリプログラマのブログ。

フリーの静的コード解析ツール「Splint」について

弊社では静的コード解析ツールを使っていません、というよりも環境が少し特殊でして解析ツール自体がありません*1

毎回クライアントに静的解析をお願いして解析結果を頂いています。逆にクライアントから任意のタイミングで解析結果をまとめたエクセルシートを渡されて、なんでその実装になっているのかエラーに問題がないのかどうかを確認する必要があります。

当然ながらクライアントに依頼しなければいけないので、私たちが任意のタイミングで静的解析をかける事ができません。

静的コード解析ツールは、往々にして残念な結果を返して来ることが多々ありますが、メモリリークの可能性に気づかせてくれるのは非常に有益です。確か日本のどこかのメーカーが開発した静的コード解析ツールでもものによっては誤認識率15%と非常に高い精度のものもあったように記憶しています。

ただしこの手の静的解析ツールは中小企業が買うには高くて予算的な問題で稟議が通るとは思えないので、無料のモノを探していると Splint Home Page なるツールが良いよって書いてるwikiを見つけました。lintクローンらしくクオリティについてはお墨付きとか。

君は「これを使おうYO!!」と提案するのもいいし、自分のチームだけで使ってもいい。*2

……もう全然覚えていないけど昔の自分はlint使って書いたコードを静的解析していたみたいです。ちなみにObjective-Cでも同様の "clang" C Language Family Frontend for LLVM なるツールが存在しているらしい。

splintについて書かれたブログ

*1:これを書いてた頃はかなり前の会社ですかね

*2:たぶん世界樹の迷宮のパロなので、この記事を書いたのは5年くらい前?