第2回 Eclipseで使える静的解析ツール



NTTデータ 基盤システム事業本部
珍田晋之介/岡本隆史
2006/4/15


Eclipseプラグインで提供されるテストツールが充実してきた。本連載では、システム開発の現場に有効なテストツールを紹介し、統合開発ツールにEclipseを選択する開発におけるテストの効率化、ソフトウェア品質の向上のヒントを提供する。(編集部)


INDEX
1.check Style
2.PMD
3.Find Bugs

  静的解析ツールは、プログラムに対して、機械的にチェックを行うことにより、文法スタイルの誤りやパターン化されたバグを検出します。今回はCheckstyle、PMD、FindBugsプラグインを紹介します。

 静的解析ツールの特長

 皆さんは過去に、自分が書いたソースコードに潜在的な問題がないか、複数のプログラマーが参加する形式でレビューをしてもらった経験をお持ちでしょうか? 実施した長時間のレビューにもかかわらず、ほとんどの指摘がコーディング規約違反や、文法スタイルに関する誤りについてだったことはないでしょうか。

 本来コードレビューは、仕様が正しく実装されているか、あるいはデザインパターンなどを駆使して効率的なコードとして実装されているかなど、スキルの高い有識者の目で見て判断しなければならない指摘項目を限られた時間の中で挙げることが目的になります。この目的を達成するためにも、まず先ほど示した文法スタイルの誤りやパターン化されたバグなどについて、プログラマー自身が事前にチェックを行い修正しておくことが重要になります。これらのサポートを行うツールとして静的解析ツールが存在します。

 静的解析ツールは有償、無償といくつかありますが、それぞれの特長は以下のようになります。

<有償>

  • デフォルトで提供されている静的チェックルール数が無償ツールに比べて多い
  • ファイル、コンパイル情報、バイナリ情報を組み合わせて静的解析を行う
  • カスタムルールの作成支援機能が提供されている
  • レポート生成機能などの付加機能が提供されている

<無償>

  • デフォルトで提供されている静的チェックルール数は有償に比べると少ない
  • 静的解析には一般的にファイル、バイナリ情報のいずれかを使用している
  • 一部の静的解析ツールではカスタムルールの作成支援が可能

 今回は、前述したように無償で利用できる「Checkstyle」「PMD」「FindBugs」を紹介します。

<本稿で使用した検証環境>
Eclipse:eclipse-SDK-3.1.1-win32.zip
日本語化パック:NLpack1-eclipse-SDK-3.1.1a-win32.zip

  1/4

 INDEX

Page.1
静的解析ツールの特長
  Page.2
コーディング規約のチェックツール:Checkstyle
  Page.3
潜在的なバグからコーディング規約をチェック:PMD
  Page.4
潜在的なバグの予防に便利:FindBugs


Java Solution全記事一覧

TechTargetジャパン

Java Solution フォーラム 新着記事

@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

RSSフィード

キャリアアップ

- PR -
@IT Sepcial

イベントカレンダー

PickUpイベント

- PR -
もっと見る
- PR -

お勧め求人情報

ホワイトペーパーTechTargetジャパン

@IT Sepcial
ソリューションFLASH