FlexdPMDとは
FlexPMDはAdobeがオープンソースで提供するActionScript向けのコードチェックツールだ。ActionScriptのコードを解析して以下のようなチェックを行うことができる。
- 未使用のコード(関数、変数、定数等)
- 効率の悪いコード(ダイナミックフィルタの誤用、重いコンストラクタ等)
- 複雑すぎるコード(ネストしたループ、条件が多すぎる場合等)
- 長すぎるコード(クラス、メソッド等)
- Flexコンポーネントライフサイクルを誤った使用
FlexPMDはコマンドラインやAntからの実行できるほか、Eclipseプラグインとしても利用可能だ。今回はFlash Builder 4(スタンドアロン版)にFlexPMDをインストールして使用する方法を紹介をする。
FlexdPMDをEclipseにインストール
まずはFlexPMDのダウンロードページから、FlexPMD本体(All-in-one-bundle)をダウンロードして適当なディレクトリに展開しておこう。
続いてFlash Builderからこちらの更新サイトを指定してFlexPMDのEclipseプラグインをインストールする。
Eclipseプラグインは以下の環境でテストされているとのことだ。
- FlashBuilder 4 Beta 2 standalone
- FlashBuilder 4 + Eclipse 3.5
- FlashBuilder 4 + Eclipse 3.4
- FlashBuilder 3 + Eclipse 3.4
インストールが完了したらEclipseプラグイン側の設定を行う。Flex Builderの[ウィンドウ]-[設定]からFlexPMDを選択しよう。FlexPMDの設定画面が表示されるので、以下のように設定を行う。
FlexPMD command line installation:
FlexPMD本体に含まれるflex-pmd-command-line-x.x.jarのパス
FlexCPD command line installation:
FlexPMD本体に含まれるflex-pmd-cpd-command-line-1.2.jarのパス
以上で準備は完了だ。FlexPMD本体、およびプロジェクトのディレクトリに半角スペースが含まれているとFlexPMDがうまく動作しないことがあるようなので注意してほしい。
FlexPMDを使ってみよう
それでは早速FlexPMDを使ってみよう。Flex Builderで適当なプロジェクトを作成し、右クリック-[FlexPMD]-[Run FlexPMD]を選択するとFlexPMDが実行され、FlexPMD Viewというビューに結果が表示される。チェック結果はコンパイルエラーなどと同様、問題ビューにも表示される。
FlexPMDをファイル保存のタイミングで自動実行するようにすることも可能だ。プロジェクトを右クリック-[FlexPM]-[Add FlexPMD Nature]を選択するとインクリメンタルビルド時にFlexPMDが実行されるようになる。自動実行を解除する場合は同じく右クリックメニューから[Remove FlexPMD Nature]を選択すればよい。FlexPMDでチェック可能なルールセットはFlexPMD Ruleset CreatorDで確認することができる(FlexPMD Ruleset Creatorはルールセットをカスタマイズして独自のルールセットを作成するためのFlexアプリケーションだ)。
また、右クリック-[FlexPMD]-[Find suspect cut and paste]を選択するとFlexCPD(ソースの重複するためのツール)を実行することができる。実行結果はCPD Viewに表示される。結果をダブルクリックすると重複していると判定された部分がエディタ上で範囲選択された状態になる。
まとめ
FlexPMDを利用するとActionScriptのコードにありがちな間違いをチェックすることができる。Flexアプリケーションの品質向上に役立ててほしい。