RAP、Orion…Web関連のプロダクトも
本連載では、数回に分けてEclipse Keplerの新機能を紹介してきた。Eclipse Foundationでは、Eclipseやその周辺プラグインだけではなく、様々なライブラリやツールなども開発されている。最終回となる今回は、Keplerのリリーストレインに含まれるプロダクトの中でも特にWeb技術に特化したRAPとOrionを紹介したい。
Remote Application Platformに進化したRAP 2.x
RAPはもともとWebブラウザ上で動作するAjaxアプリケーションをEclipseのAPIを使用して作成できるというフレームワークで、利用できるAPIに制限はあるものの、SWTやJFaceなどを用い、Eclipseプラグインとして作成したアプリケーションがそのままWebブラウザ上で動作する。Eclipseプラグインを開発したことがある人には、EclipseRCPがブラウザ上で動作するといえばわかりやすいだろうか。
RAP 2.xではサーバサイドがクライアントを問わないJSON形式のAPIに改められ、正式名称もRich Ajax PlatformからRemote Application Platformに変更された。また、iOSやAndroid(制限あり)にも対応した。
また、RAPをベースとしたサードパーティ製のプロダクトとして、Tabrisがある。これはRAPのフロントエンドとして、WebブラウザではなくiOSやAndroidネイティブのクライアントを使用するというものだ。RAPを使用して開発したアプリケーションをスマートフォンやタブレット上でネイティブアプリケーションとして実行することができる。RAPをうまく活用した例といえるだろう。
Orion 3.0
Orionは、本連載でも過去に紹介したことがあるWeb IDEだ。Eclipse FoundationではOrionHubでOrionをホスティングしており、アカウントを作成することですぐに試すことができる。
OrionはいまのところWeb技術にフォーカスしており、コンテンツアシストなどのサポートもHTMLとJavaScriptに限られている。しかし、Gitが統合されていたり、ファイルの差分表示が可能など、基本となる機能については実装が進んでいるようだ。
Orionはプラグインで拡張可能なほか、各機能をコンポーネントとして単独で利用することも可能で、例えばOrionのエディタや差分表示機能だけを他のWebアプリケーションで使用するといったこともできる。このあたりは、OrionもEclipseと同様に、自身がIDEとしての機能を提供するだけでなく、開発ツールのプラットフォームを提供しようという意図が強く伺える。
3.0ではキーバインディング(vi、Emacsのキーバインディングを選択可能)や国際化のサポートが追加され、エディタもテンプレートの補完や自動保存ができるようになるなど強化されている。また、これまではnode.jsで動作させる必要があったが、warファイルでも配布されるようになり、TomcatやJettyなど既存のアプリケーションサーバに簡単にデプロイできるようになった。
まとめ
Eclipse Foundationではこの他にも、JPA実装であるEclipseLink、アプリケーションサーバJetty、CIツールHudsonなどが開発されており、IDEに留まらない開発コミュニティに成長している。最近の例ではvert.xのEclipse Foundationへの参加も注目を集めた。Eclipse本体の成長が鈍化している中、これらのプロダクトがEclipse Foundationを盛り上げていくのかもしれない。
次期EclipseのコードネームはLunaとなっており、Java8のサポートなどが予想されるが、Eclipse以外のプロダクトの動向についてもぜひ注目して欲しい。