プラグインの開発をより簡単に
Eclipse の歴史はプラグインの歴史といっても過言ではありません。
バージョン 1.0 から 2.1 までの Eclipse は、プラグインの統合に主眼が置かれていました。現在のプラグインシステムの基礎はこの頃に築かれたと言えます。
Eclipse 3.0 以降 では、プラグインシステムのアーキテクチャとして OSGi が採用されました。これによって、Eclipse を組み込みアプリケーションやリッチクライアントアプリケーションの開発・実行プラットフォームとしても利用できるようになりました。
このようにプラグインというコンポーネントをベースに発展してきた Eclipse ですが、プラグインの開発は容易ではありません。プラグイン開発は多くの開発者にとって本質的ではありませんが、学ばなければならない Eclipse 独自の機能が数多くあることがプラグイン開発を困難にしています。また、プラグイン開発に使うことができるプログラミング言語が Java のみである、という点もプラグイン開発を困難にしているといえるでしょう。
プラグイン、つまり Eclipse ベースのアプリケーションの開発をより簡単に行えるようにすることは、e4 の主要なゴールの 1 つとなっています。
Web ベースの技術の採用
e4 ではプラグイン開発をより簡単にするための手段として、主に 2 つの Web ベースの技術を採用しています。
1 つは CSS です。e4 では、ウィジェットのフォントサイズや背景色などユーザインタフェースに関する情報を CSS で定義します。Eclipse のわかりにくいユーザインタフェースはプラグイン開発を困難にしている要因の 1 つです。CSS の導入はこれを改善するものとなるでしょう。
もう 1 つは JavaScript です。e4 では、プラグイン開発に JavaScript を使うことができます。この機能を実現するため、JavaScript ベースのプラグインと OSGi Framework の仲介を行う e4 JS Framework が新たに実装されました。e4 JS Framework 自身は Java ベースのプラグインであり、Rhino を利用して JavaScript を JavaVM 上で動作させています。
これは JavaVM 上で動作するどんなプログラミング言語でもプラグイン開発を行うことができる可能性を示しています。今後、多くのプログラミング言語がサポートされれば、プラグイン開発はさらに活発になるでしょう。
サンプルアプリケーションを動かす
それでは e4 をインストールしてサンプルアプリケーションを動かしてみましょう。e4 は以下のサイトからダウンロードすることができます。
http://download.eclipse.org/e4/downloads/drops/R-0.9-200907291930/index.html
tar xzf eclipse-e4-SDK-incubation-0.9-linux-gtk.tar.gz
インストールが完了したら、e4 を起動します。
サンプルアプリケーションのプロジェクトを生成するため、[e4] -> [Generate e4 Example Project] をクリックします。
次に生成された org.eclipse.e4.examples.psf プロジェクトの e4-examples.psf を右クリックし、[Import Project Set] をクリックします。CVS リポジトリのユーザ名とパスワードを入力するダイアログが表示されるので、ユーザ名に anonymous と入力します。
以上の操作で 2 つのプロジェクトがダウンロードされます。
- org.eclipse.e4.demo.contacts
- org.eclipse.e4.demo.e4photo
今回は org.eclipse.e4.demo.contacts プロジェクトを使って、CSS によるユーザインタフェースの変更を試してみましょう。
org.eclipse.e4.demo.contacts プロジェクトの contacts.product を右クリックし、[Run As] -> [Eclipse Application] をクリックすると、Contacts アプリケーションが起動します。
[Theme] メニューでテーマを変更することができます。
次に org.eclipse.e4.demo.contacts プロジェクト の bright-gradient.css でアプリケーションの背景色を変更してみましょう。
org.eclipse.e4.demo.contacts/css/bright-gradient.css
--- a/org.eclipse.e4.demo.contacts/css/bright-gradient.css 2009-08-25 14:10:16.000000000 +0900
+++ b/org.eclipse.e4.demo.contacts/css/bright-gradient.css 2009-08-25 14:10:32.000000000 +0900
@@ -36,7 +36,7 @@
}
#DetailsView {
- background-color: #e8e8e8 #cccccc 60%;
+ background-color: #00ffff #cccccc 60%;
}
Table {
テーマを再び選択するとアプリケーションの背景色に反映されます。
おわりに
e4 プロジェクトは、デスクトップアプリケーションと Web アプリケーションのそれぞれの利点を認識し、その両立を目指しています。また、コンポーネント (プラグイン) を充実させ、それらを組み合わせることでアプリケーションを構築することも視野に入れています。
後者はまさに書籍 ジェネレーティブプログラミング (IT Architects'Archive CLASSIC MODER) に書かれているソフトウェアの自動生産の技術であり、そのような観点からも興味深いプロジェクトと言えます。
CSS というユーザインタフェースデザイン用の DSL の導入や、Java 以外のプログラミング言語によるプラグイン開発など、より工学的で自由度の高いプラットフォームに進化しているという印象を受けました。
操作性や動作も従来の Eclipse と遜色ありませんので、今使っているプラグインが動くのであれば、メインの開発環境として使ってみようかなと考えています。
使用したソフトウェアのバージョン
| e4 | 0.9 |
|---|
