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(制限あり)にも対応した。

図1 : RAPのデモ

また、RAPをベースとしたサードパーティ製のプロダクトとして、Tabrisがある。これはRAPのフロントエンドとして、WebブラウザではなくiOSやAndroidネイティブのクライアントを使用するというものだ。RAPを使用して開発したアプリケーションをスマートフォンやタブレット上でネイティブアプリケーションとして実行することができる。RAPをうまく活用した例といえるだろう。

図2 : TabrisのWebサイト

Orion 3.0

Orionは、本連載でも過去に紹介したことがあるWeb IDEだ。Eclipse FoundationではOrionHubでOrionをホスティングしており、アカウントを作成することですぐに試すことができる。

図3 : Orion

OrionはいまのところWeb技術にフォーカスしており、コンテンツアシストなどのサポートもHTMLとJavaScriptに限られている。しかし、Gitが統合されていたり、ファイルの差分表示が可能など、基本となる機能については実装が進んでいるようだ。

図4 : 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以外のプロダクトの動向についてもぜひ注目して欲しい。