ActionScript
『Head First デザインパターン 頭とからだで覚えるデザインパターンの基本』p57〜p60より
ObserverパターンをActionScriptで書くと・・・
FlashDevelopを使って、複数人でプロジェクトを進める場合、コメント行は大変助かる。
とはいえ、大規模なプロジェクトの開発となると、コメント行だけがあってもわかりにくい時がないとは言えない。
そこで、活躍するのがFlashDevelopのTaskListPanel。
以下のようにコメントを書くとTaskListPanelに表示される。
//TODO 未実装 - digitrick
デフォルトではTODOの他に『FIXME』と『BUG』が登録されているが、
項目は増やすことも減らすこともできる。
プロジェクトチームなどでカスタマイズするとよいと思う。
項目のカスタマイズは
<tools>メニュー » <Setting> » TaskListPanel
を開き、“Group Values”に文字列を追加する。
また、項目ごとにアイコンを指定することが可能。アイコンは“image indexes”に以下の場所にあるImages.pngに対応する番号で指定する。
C:¥Program Files¥FlashDevelop¥Settings¥Images.png
もちろん個人での開発にも多いに活用できると思う。
Windowsにはとんと疎いもので、xingxxさんを参考にApacheAntのインストールからFlex PMDの設定までをさせてもらった。
- xingxx - FlexPMD :: 環境構築から実験まで。
- http://log.xingxx.com/2009/09/flexpdm.html
さらにFlash DevelopにFlex PMDを実行するボタンをblog.sncr.jpさんを参考に追加。
- FlashDevelopにFlexPMDボタンを追加するメモ - blog.sncr.jp
- http://blog.sncr.jp/249
さらにさらにFlexPMDで出力したXMLファイルをFlashDevelopのResultsパネルに表示するマクロをblog.sncr.jpさんが公開されていたので、追加。
- FlexPMDで出力したXMLファイルをFlashDevelopのResultsパネルに表示するマクロ - blog.sncr.jp
- http://blog.sncr.jp/265
build.xmlのテンプレート配置して、そらもうとても楽になりました。
ただ、Flex PMDを使っていて思ったのが、作るものに合ったルールセットが必要だなと。作り方を探っているとAdobe Flex PMD Ruleset creatorというものが提供されていた。
- Adobe Flex PMD Ruleset creator
- http://opensource.adobe.com/svn/opensource/flexpmd/bin/flex-pmd-ruleset-creator.html
でも・・・追加ができない・・・?そうか、書くのか・・・
- Snow Leopard(Mac OS X 10.6)でコンテキストメニューアイテムを追加する
- http://labs.digitrick.net/article/200909051042.html
上記記事でサービスメニューに追加することでコンテキストメニューに追加できることがわかったので、右クリックでFlex PMDを動作させようと思う。
※Flex PMDの設定がまだできていない場合は、設定をしてから行ってください。
- Flex PMDをMacで使用する
- http://labs.digitrick.net/article/200909050838.html
ではサービスワークフローを作成していく。
- “run.FlexPMD.workflow”を開く
- サービスワークフローを新規作成
- 入力対象を[フォルダ]、検索対象を[Finder.app]にする
- “run.FlexPMD.workflow”の2番目と3番目のアクションをコピーして、新規作成したサービスワークフローにペースト
- 任意名を付けて保存する
これでソースフォルダを選択して右クリックでFlex PMDが動作する。
※ソースフォルダにソースがない場合、エラーが出てしまう(元から)ので、ワークフローに途中ごにょごにょ咬ませるとよいかと。
Flex PMDはAnt、コマンドラインで提供されていて、Mac用にはAutomatorワークフローが提供されている。このAutomatorワークフローは
- ソースファイルのあるフォルダを選択
- シェルスクリプトを実行
- ブラウザで表示する
というシンプルなワークフロー。2番目のシェルスクリプトの実行で、コマンドラインで提供されている部分が呼び出されている。
では順を追って設定していく。
- 以下から“MAC OSX Automator”の最新ファイルをダウンロード(この記事の段階でRC3)
- Downloads - Flex PMD - Confluence
- http://opensource.adobe.com/wiki/display/flexpmd/Downloads
- ダウンロードしたファイルを解凍し、任意の場所にフォルダ名を変更せずに置く(この記事では~/Automator)
- 置いたフォルダ内(flex-pmd-automator-<バージョン>-workflow)の“run.FlexPMD.workflow”をAutomatorで開く
- 2番目のアクション「シェルスクリプトを実行」の13行めの記述を変更する
flexPmdWorkflowLocation="/Users/<ユーザー名>/Work/repositories/opensource.adobe/flexpmd/trunk/flex-pmd-automator-workflow/target/flex-pmd-automator-${flexPmdVersion}-workflow"/* この記事では~/Automatorに置いたので */ flexPmdWorkflowLocation="/Users/<ユーザー名>/Automator/flex-pmd-automator-${flexPmdVersion}-workflow" - 保存する。
実行するとブラウザで動作を確認することができる。別名で保存してアプリケーション形式にしておくと便利かも。
追記(2009年9月5日11時)
ソースフォルダを右クリックでFlex PMDを使えるようにコンテキストメニューに追加してみました。
- Flex PMDをコンテキストメニューに追加する(Snow Leopard Mac OS X 10.6)
- http://labs.digitrick.net/article/200909051147.html
