InfoQは今年のはじめに、AIRのデバッガであるArthropodについてレポートした。今回紹介するDe MonsterDebuggerもFlash、Flex、そしてAIRのデバッガであり、今年になって正式にリリースされた。InfoQはDe MonsterDebuggerの主要な開発者であるFerdi Koomen氏に、このツールについて詳しい話を聞いた。
はじめにKoomen氏はDe Monstersの概要を紹介してくれた。
De MonsterDebuggerは、Adobeの、Flex、そしてAIRのプロジェクトのためのデバッガであり、軽量ながら必要な機能すべて備えています。また、すべてAdobeのAIRで実装されていてオープンソースのライセンスで公開されています。De MonsterDebuggerには2つの重要な特徴があります。それはインスペクタとトレース機能です。インスペクタを使えば実行時にアプリケーションの挙動を精査でき、プロパティの値を変えたり、デバッガから直接関数を呼び出すこともできます。そして、先進的なトレース機能はユーザがデバッガに送信した情報をすべて出力するので、詳細な調査が可能になります。例えば、読み込んだXMLを出力してすべてのノードや属性を見ることも、カスタムで作ったクラスを出力してそのクラスの構造やプロパティを調べることもできます。
類似のデバッガと比べて、Koomen氏は次のように説明する。
Flex BuilderのデバッガはFlex BuilderというIDEを使ったMXML開発とActionscript開発のためのデバッガです。しかしDe Monstersの狙いは違います。Actionscript 3 だけを使ったプロジェクトを作り、たくさんのカスタムコンポーネントを使って開発をしたいとき、開発環境としてAdobeのFlash IDEを選択します。しかし、この開発環境には良いデバッガがありませんでした。このようなときDe Monstersが力を発揮します。我々は可能な限り、De MonsterDebuggerの使いやすさを維持しようと思っています。また、De MonsterDebuggerは開発環境がなくても動作しますので、実運用中のアプリケーションやサイトを構成を変更せずにデバッガの実行環境なしでデバッグできます。
最もユニークなのは、活発なコミュニティがあり、ユーザと開発者との間で公正なやり取りが行われていることです。我々はユーザの声を聞き、必要に応じて新しい機能を実装しようとしています。例えば、最近になって追加されたメモリ・フレームレート画面表示と呼ばれる機能はユーザの声から生まれたものです。De MonsterDebuggerは日常的に使われていますから、日々の作業で十分に使えるくらい安定している必要があります。誰も自分の使っているデバッガをデバッグしたいとは思いませんから。
さらに氏はDe Monstersのblogの記事にも言及した。この記事は X-Ray、Arthopd、Das Bugger、Whitefly、そしてAlconのような他のツールとDe MonsterDebuggerを比較したものだ。
また、氏はDe MonsterDebuggerのオープンソースとしての特性も伝えてくれた。
このアプリケーションのソースコードはGoogle codeのリポジトリから全部ダウンロードできます。なので、開発者はソースコードをダウンロードして特定の用途に合致した変更を加えることに興味を持ちます。このようなカスタマイズを簡単にできるようにするために、我々はDe MonsterDebuggerのモジュール化に取り組んでいます。こうすることで、開発者はカスタムモジュールを作成しDe MonsterDebuggerの機能を拡張することができます。またカスタムモジュールをコミュニティの中で共有することも支援していきたいと考えています。
Koomen氏と氏のチームはAIR 2.0のバージョンを作成中だ。より高速化し、モジュール化してリモートでも実行できるようにしている 。InfoQは引き続きこの進化の過程をレポートしていきたい。