AIDE は Android 上で動作する Android アプリケーション開発用 IDE である。今回の記事では,その開発者へのインタビューを紹介する。
ドイツの小さなチームが開発した Android Java IDE (AIDE) は Android 2.2-4.0 デバイス上で動作し,Google のモバイル OS 用 Java アプリケーション開発のためにソース編集,コンパイル,自動エラーチェック,logcat によるデバッグなどを行うことができる。Eclipse で作成したプロジェクトをロードして開発することも可能である。スマートフォンを使って路上でアプリ開発する,という利用法もあるが,もっと大きなタブレットにキーボードを接続しての開発作業が推奨されるシナリオだ。
小さなデバイス上での開発には特有の限界があるものの,AIDE を支持する開発者は多く,作成者によれば 30,000 人を越えるベータテスタがいるという。開発者それぞれに開発用ワークステーションを買い与える必要がなくなるという理由で,この IDE を魅力的なものと考える企業もあるだろう。
InfoQ では AIDE の技術的な詳細をさらに深く知るため,その開発者である Hans Kratz,Dennis Strein の両氏にインタビューを行った。
InfoQ: AIDE の開発に使用された言語と技術はどのようなものでしょうか?
AIDE チーム: AIDE 自体は 100% ピュア Java で記述されていますが,ビルドプロセスで Android SDK のビルド済バイナリをいくつか使用しています。その他にも APK ファイルのパッケージ生成などの周辺タスクで,オープンソースの Java ライブラリを使っています。
InfoQ: Eclipse の技術は使用していますか? AIDE は Eclipse のプロジェクトを扱いますが,その方法について説明してください。
AIDE チーム: Eclipse のテクノロジはまったく使用していません。エラーチェックやコード補完,リファクタリング,インクリメンタルコンパイルといった "スマート" な機能はすべて,モバイルデバイスの限られたメモリや CPU の制約内で動作するように,独自の技術で構築しているのです。
Eclipse プロジェクトのサポートを実現できたのは,プロジェクトのフォーマットが明確に定義されている上に,比較的シンプルなものだからです。
InfoQ: 従来のワークステーション開発と比較した場合,AIDE の特徴は何でしょう?
AIDE チーム: Android では,アプリで使用可能なメモリに厳しい制限があります。その中で Samsung Galaxy S2 スマートフォン上で AIDE 自体をビルド可能であるように,100,000 ソース行を越えるプロジェクトの処理を実現していることでしょうね。初期ビルドには PC 上の Eclipse よりも時間が必要 (AIDE の方が2分ほど長い) なのですが,部分的な修正に対するインクリメンタルビルドでは,その差はずっと小さくなります。実際にわずかな変更を行った後で,スマートフォン上で AIDE をビルドするのに要する時間は 30 秒程度です。Eclipseで同じ程度の作業を行う時間とほとんど違いません。
中小程度の規模のプロジェクト – Android アプリ開発プロジェクトの大部分がそうです – のビルド時間に関しては,さらによい結果が出ています。
InfoQ: Java 以外の言語による開発をサポートする予定はありますか?
AIDE チーム: AIDE は XML もサポートしています。今のところ,他の言語を (C/C++ と HTML 用の基本的な構文に関する強調表示を除けば) 積極的にサポートする予定はありません。
InfoQ: ロードマップはありますか?
AIDE チーム: 現在 AIDE ユーザが直面している主な問題は,モバイルデバイス間,あるいはチームメンバ間で開発作業の同期を取ることです。ですから今は,Git のようなバージョン管理システムのサポートを作業リストの先頭に置いています。それ以降の進む方向としては,いくつか選択肢があります。例えば UI ビルダは要望の多い機能のひとつですし,Android デバイス上へのデバッガ実装にもまだ手が付けられていません ...
InfoQ: AIDE はフリーソフトを続けるのでしょうか,あるいは有償化される予定ですか? オープンソース化についてはどうでしょう?
AIDE チーム: 私たちは将来的に AIDE を,最も重要な Android アプリ開発手段にしたいと考えています。
ですから現時点での目標は強固な AIDE のユーザベース構築であって,これまでのところは順調に進んでいます – 2週間足らずで 30,000 人以上のベータテスタを獲得して,700 人以上の評価で5つ星を付けられているのです。まさに時流を得たアイデアだと言えます。ソフトウェア開発をポストPC時代へと進める熱意を,私たちはユーザである開発者たちと共有しているのです。
現在は Android プラットフォームに戦略的な関心を持ち,可能ならば 100% フリーなAIDE を維持しながら,このビジョンの実現を援助してくれるパートナーを探しているところです。