Eclipse Europa の駆け足ツアー

Eclipse V3.3 に同梱された 21 のプロジェクトの大々的変更。Europa による生産性向上の仕組みを学んでください

21 のプロジェクトを同時にリリースする今年の Eclipse Europa リリースは、プロジェクト数が 10 だった昨年のリリース群と比べて大幅な改善を遂げています。この記事では、Europa リリースに関連付けられた各プロジェクトを簡単に説明します。

Chris Aniszczyk, Software Engineer, IBM 

Chris AniszczykChris AniszczykはIBM Lotusのソフトウェア技術者であり、IBMのExtreme Blueインターンシップ・プログラムの卒業生でもあります。オープンソースの信奉者であり、現在はGentoo Linux (http://www.gentoo.org) ディストリビューションに取り組んでいます。またEMFT(Eclipse Modeling Framework Technology)プロジェクトのコミッターでもあります。



2007年 6月 29日

簡単に言うと、Europa は 21 の主要な Eclipse プロジェクトの同時リリースです。

Europa と Eclipse のリリース群に関して重要な点は、同時リリースとは言っても、これらのプロジェクトが統合されているわけではないということです。いずれのプロジェクトも独立したオープン・ソース・プロジェクトとして、それぞれに固有のプロジェクト・リーダーシップ、コミッター、開発計画で推進されています。結局のところ、Europa が目的としているのは、透過的で見通しの立てやすい開発サイクルを提供することによって、Eclipse プロジェクトをベースに作業する開発者たちの生産性を向上させることです。特定の日に、該当するソフトウェアが必ず使用可能になることがわかっていれば、ソフトウェアのシップが容易になります。

Europa の入手方法

Before we get into the details about each of the 21 projects, let's complete a quick, hands-on exercise that will result in the installation of Europa on your machine.

21 のプロジェクトそれぞれについての詳細を探る前に、簡単な実践的演習で Europa をお使いのマシンにインストールしてください。

Europa を取得するための最初のステップは、Eclipse V3.3 SDK のダウンロードです。次に Eclipse を起動し、Help > Software Updates > Find and Install を選択してアップデート・マネージャーにアクセスします (図 1 を参照)。この記事が掲載されるまでに Europa ディスカバリー・サイトがまだ用意されていなかったら、お使いのロケール用の適切な Europa アップデート・サイト情報を入力してください (「参考文献」を参照)。

図 1. アップデート・サイトの構成
Update site configuration

Europa アップデート・サイトに接続すると、Europa リリース群に含まれる利用可能な機能のリストが表示されます (図 2 を参照)。アップデート・サイトに接続しさえすれば、後は簡単です。お使いの Eclipse システムにインストールしたい機能を選択するだけで、その機能を使い始められます。この 2 つの単純なステップで、Europe リリースを利用する準備は万端です。

図 2. Europa アップデート・サイト
Europa update site

リリース群

それぞれのプロジェクトについて概要を説明した後、Europa リリースにおけるそのプロジェクトの際立った特徴を Eclipse コミッターの言葉を借りて説明します。ここに記載する引用は、各プロジェクトのコミッターとの E メールでのやりとりからのもので、あくまでも開発者同士の会話です。無責任なおしゃべりやマーケティングの後押しが期待されていたわけでも、また、それが許されていたわけでもありません。

Eclipse Platform

Eclipse Platform プロジェクトは、Eclipse の中核です。このプロジェクトは実際には多数の「サブプロジェクト」で構成されていますが、私の考えるところ、プロジェクトは以下の 4 つの柱で構成されています。

Plug-in Development Environment (PDE)
Wassim Melhem (Eclipse PDE リーダー、IBM® 社員) の言葉です。「Planet Eclipse のブログ」で「プラグイン開発者のクリスマス」として語られているのは、PDE (Plug-in Development Environment) が Europa に大幅なプラグイン・マニフェスト・エディターの変革をもたらすことです。この変革により、マニフェスト・エディターには期待の大きかったコンテンツ支援をはじめ、豊富なソース編集機能が備わります。その他注目に値する機能としては、チートシートのオーサリング、ターゲットのプロビジョニング、拡張された RCP および OSGi ツールなどがあります。さらに、この一年間で 800 に近い機能拡張とバグ・レポートに対する修正が行われているので、PDE 3.3 リリースでは確実に、堅牢性が重要な特徴だと言えるでしょう」。
コア
Eclipse Platform のコアのほとんどは、Equinoxプロジェクトからもたらされています。OSGi のリファレンス実装としての役割を果す Equinox は、いわば Eclipse のビルディング・ブロックを構成しているとも言えます。Eclipse のプラグイン・モデルと拡張概念は、Equinox ならびにその他のいくつかの技術に収まっています。
ユーザー・インターフェース
ここにはワークベンチに関するすべてのものがあります。
JDT(Java™ Development Tools)
ほとんどの開発者が Eclipse を使い始める際に出会う最初のコンポーネントです。Eclipse には世界有数の Java 開発環境、JDT が備わっています。

AJDT (Aspect Java Development Tools)

AJDT プロジェクトは、AspectJ を使用したアスペクト指向ソフトウェア開発向けの Eclipse Platform ベースのツール・サポートを提供します。JDT が Java 開発者の作業を楽にするのと同じように、AJDT はアスペクト開発者の作業を楽にします。

「AJDT (AspectJ Development Tools) プロジェクトは今年初めて、Eclipse リリース群に加わっています。去年、このプロジェクトはその完成度と普及度を反映して技術プロジェクトから外され、ツール・プロジェクトになりました。このプロジェクトはアスペクト指向プログラミングに必要なあらゆるものを提供します。具体的には、AspectJ コンパイラーとウィーバー、AspectJ ソース・コード用エディター、そして開発者が AOP のメリットを最大限に活用できるようにするための追加のビューやその他の機能です」。こう話してくれたのは Matt Chapman (AJDT リーダー、IBM 社員) です。「去年の 1.4 リリース以降、多くの改善が加えられています」。

  • 「Java 型の名前変更の際にリファクタリングを伴ったアスペクトの更新を行います」。
  • 「アスペクト・パス設定を使用して、プロジェクト全体でのバイナリー織り込み処理のサポートを強化しています」。
  • 「アスペクト・パスとパス内の設定を、通常の Java クラスパス設定と一層整合させています」。
  • 「Crosscutting Comparision ビューが改善されています」。
  • 「プロジェクト内の横断関係に対する変更を強調表示する新規機能が追加されています」。

BIRT (Business Intelligence and Reporting Tools)

BIRT プロジェクトが目指しているのは、Web と PDF に対応した有力なレポートを作成する、アプリケーションと一体化した Eclipse ベースのレポーティング・システムを実現することです。BIRT は、グラフィカル・レポート・デザイナー、データ・アクセス、スクリプト作成サポートなど、中核的なレポート作成機能を提供します。

「Europa リリースの一環となっている BIRT 2.2 は、レポート開発、容易なフレームワーク統合、そしてコンテンツのエクスポートを支援する数多くの新規機能を提供します。これらの新規機能には、レベル集約機能、フィルタリング機能、ソート機能を備えた階層レポート作成をサポートする新規の動的クロスタブ要素や、XLS、Doc、PPT、そしてポストスクリプト形式に対応した新規のエミッター、そして新規の Web サービス・データ・アクセス・ドライバーなどがあります。さらに既存の機能に対しても多くの改善が行われています」。BIRT の熱烈な支持者である Acuate 社員の Jason Weathersby は、さらにこう続けました。「その上、BIRT には新しいプロジェクト・タイプもいくつか加わっています。例えば、WTP メカニズムによって BIRT Viewer と新しいタグ・ライブラリーをデプロイすることを可能にする Web プロジェクト、独自のデータ・ドライバーのビルドを簡易化する新規 ODA プロジェクトなどです」。

Buckminster

Buckminsterプロジェクトを構成するのは、複合コンポーネントまたは分散コンポーネントをベースとした開発でのビルド、アセンブル、そしてデプロイメントの開発プロセスを自動化するフレームワークとツールです。Buckminster を使うと、開発組織は、ソフトウェア生産でのさまざまな段階に細かな粒度で「生産ライン」を定義することができ、対応するプロセスの実行を自動化することが可能になります。このようなプロセスとして一般的な例は、新しいチームに参加した開発者に、一から開発環境をセットアップすることが期待されている場合です。Buckminster は、新しく参加した開発者が自分の開発ワークスペースを具体化し、短期間のうちに生産的なチーム・メンバーになれるようにします。

「Buckminsterで初の正式リリースとなる Europa は、対象範囲、生産品質ともに大幅に改善されています。現在 Buckminster は、動的コンポーネント・クエリーと 2 フェーズの解決モデルにより、きめの細かい制御とさらに種類豊富な構成解決プロセスをサポートするようになっています。また、ネイティブ Eclipse (PDE) と外部ビルド・メカニズムが関連するアセンブリー・プロセスのオーケストレーションをサポートするアクション・フレームワークも導入され、ヘッドレス実行機能も拡張されています。拡張性はすべての成果物に対する正式な XML スキーマにより大幅に改善され、ユーザビリティーはグラフィカル・エディターの初期セットにより強化されています」。以上は、Thomas Hallgren (Buckminster コミッター、Cloudsmith 社員) の言葉です

CDT (C/C++ Development Tooling)

CDT プロジェクトの目的は、Java 開発での JDT のように、十分に機能的な C および C++ 開発環境を Eclipse Platform にもたらすことです。

「CDT は、Linux®と組み込みシステムをターゲットとする商業ベンダーの間で C/C++ IDE のデファクト・スタンダードになりつつあります。それと同時に、CDT には Windows®GNU コンパイラーを使用する大規模なユーザー・コミュニティーもあります。このような CDT のユーザー基盤の広さ (必要最小限の機能を備えた小規模な組み込みシステムから大規模なクラスターで動作するハイパフォーマンス・コンピューティング・アプリケーションに至るまで) はまさしく、CDT が提供するフレームワークと機能の柔軟性を象徴しています」。Doug Schaefer (CDT リーダー、QNX Software Systems 社員) はこのように語りました。

「CDT 4.0 はこれまでで最大のリリースで、20 人を超えるコントリビューターが関わっています。我々は、このリリースが CDT の普及を次のレベルに引き上げてくれることを期待しています。特に新規プロジェクトを作成するときをはじめ、ユーザー・エクスペリエンスは大幅に単純化されています。これは、簡素化された New Project ウィザードによって、ベースとなるビルド・システムの一部の詳細が隠されるからです。CDT 4.0 は、スケルトン・コードとプロジェクト設定を提供するテンプレートに基づいて新規プロジェクトを作成することもできます」。Schaefer はさらに続けます。「CDT エディターには大々的な取り組みが行われていて、識別子の色分けオプションの数が断然多くなっていると同時に、コンテンツ支援も高速化されています。ユーザーが各々のコード構造をより深く理解できるように、Includes Browser、Call Hierarchy View、そして新しい Type Hierarchy View という 3 つの新しいビューも追加されています。一連のビルドおよびデバッグ・ツールのチェーン統合には、簡素化された MinGW 統合、GDB ハードウェア・デバッグ統合、そして IBM の xlC コンパイラーを対象とした新しい統合も加わっています。CDT の将来進むべき道は、LPG パーサー生成プログラムを使用した新しい試験的な C パーサーや UPC (Unified Parallel C) 用パーサーをはじめ、追加のプログラミング言語を処理するための新規メカニズムの導入が示しています」。

DLTK (Dynamic Languages Toolkit)

DLTK は、動的言語に信頼を置くベンダー、研究者、そしてエンド・ユーザーのためのツールであり、一連の拡張可能なフレームワークで構成されています。これらのフレームワークに意図されているのは、PHP や Perl などの動的言語に対応する完全な機能を備えた開発環境をビルドする際の複雑さを軽減することです。DLTK はこのようなフレームワークの他、設定なしでもすぐに使用できる標準的な TCL、Ruby、および Python の開発環境も提供します。

「DLTK は Europa リリースに TCL および Ruby コンポーネントを提供します。これらのコンポーネントには、JDT に見られるような一連の機能が備わっています。コード支援とコード・アウトラインを備えたコード・エディターから、宣言時に使える Open Type や Go などのコード・ナビゲーション機能、参照検索などの強力な検索機能、そして対話型コンソールや統合デバッガーに至るまでのさまざまな機能が、Ruby そして TCL といったプログラミング言語に対応した強力な開発環境を Europa にもたらします」。こう語ったのは、Andrei Sobolev (DLTK プロジェクト共同リーダー、XORED 社員) です。

DSDP-DD (DSDP Device Debugging) および DSDP-TM (DSDP Target Management)

DSDP-DD は、ハードウェアの立ち上げ、プラットフォーム・ソフトウェア開発、アプリケーション・ソフトウェア開発というデバイス・ソフトウェアの 3 つの開発フェーズをサポートすることを目的として、新規フレームワークと既存のプラットフォーム・デバッグ・フレームワークへの拡張を作成するプロジェクトです。この DSDP-DD プロジェクトが拡張デバッグ・モデル、API、そしてビューをビルドして、デバイス・ソフトウェア・ターゲットの詳細をよりわかりやすく視覚化して制御する一方、DSDP-TM プロジェクトではリモート・システムとその接続およびサービスを構成して管理するためのデータ・モデルとフレームワークを作成します。

「Europa リリースで DSDP が導入しているのは、TM (Target Management) プロジェクト V2.0 と DD (Device Debugging) プロジェクト V0.9 です。TM 2.0 ではアーキテクチャー上の改善に重点を置いてあり、UI コンポーネントと UI 以外のコンポーネントとの区別の明確化、API のクリーンアップ、システム・タイプおよびアクション・コントリビューションの柔軟性向上、ジョブ使用方法の改善が行われています。TM 2.0 では、シェル・プロセス・サブシステム、Telnet サブシステムとその関連ビュー、DNS-SD ディスカバリー、FTP リスト・パーサー拡張ポイント、そして改善された EFS プロバイダーも追加しています。TM のユーザー・コミュニティーは順調な成長を続けていて、いくつかの新しい市販の製品では TM の採用も計画されています。一方の DD 0.9 は DD プロジェクト初の一般リリースです」。Doug Gaff (DSDP PMC のメンバー、WindRiver 社員) はこのように説明してくれました。

「DD 0.9 では、Eclipse 3.2 で新たに導入された柔軟性の高いデバッグ API を利用する拡張可能フレームワーク、DSF (Debugger Services Framework) を導入しています。DSF が対象とするのは、Eclipse での商用組み込みデバッグ・エンジンの実装です。DD 0.9 はプラットフォーム・メモリー・ビューに対して、組み込みデバッガーで従来から使用されているメモリー・ビューのようなメモリー・レンダリングも行います。また、DD 0.9 に用意されている XML エディターのプレビュー・リリースは、SPIRIT コンソーシアムによる SoC (System On Chip) ハードウェア記述のための IP-XACT V1.3 標準を実装しています。この他にも DSDP サブプロジェクトが今年、Eclipse リリース群とは別にリリースされる予定です」。

DTP (DataTools Platform)

DTP プロジェクトの目的は、データ管理のドメインにフレームワークとツールを提供することです。フレームワークの例には、データ・ソース・ドライバーの位置と管理、特定のデータ・ソース・インスタンスにアクセスするための構成などがあります。接続が正常に行われた後の次の操作は、一般的にツールを使ってデータ・ソースを探索することです。このような操作は、GUI アクションによって行われることもあれば、コマンドで直接実行されることもあります。例えばデータ・ソース探索コマンドの SQL を作成、編集、テストするのは通常ユーザー (開発者と管理者の両方) ですが、その際にコード補完や、フォーマット設定、SQL ダイアレクトへの特化による SQL の編集支援で生産性を大幅に向上させます。さらに、コマンド (SQL とストアード・プロシージャーの両方) を実行またはデバッグする機能によって Eclipse が得意とする迅速な開発プロセスを完成させます。

「昨年 12 月の DTP 1.0 リリースを基礎にビルドされた DTP 1.5 は、Sybase SQL Anywhere と HSQLDB 専用のデータベース・サポート、そして ODA Web サービス・ドライバーを提供します。今回のリリースには NEC Soft, Japan も DTP チームに加わり、DTP 1.5 に対応したデータベース・テーブルの作成ウィザードを提供しています。スポンサーである Ingres 社による DTP 統合についての講演をはじめ、EclipseCon で力説されていたように、DTP エコシステムは今後も順調に拡大し続けるはずです」。以上は、John Graham (DTP PMC 議長、Sybase 社員) の言葉です。

ECF (Eclipse Communication Framework)

ECF プロジェクトを構成するのは、分散した Eclipse ベースのツールとアプリケーションの開発をサポートするためのフレームワークです。このフレームワークを使用して、非同期のポイントツーポイントまたはパブリッシュ/サブスクライブ・メッセージングを必要とする他のプラグイン、ツール、あるいは完全な Eclips RCP アプリケーションを作成することができます。

「ECF は、開発者たちが使用する API を一律にして、Europa リリースに通信機能をもたらします。ECF に用意された HTTP、BitTorrent、そして XMPP や IRC などのメッセージ・プロトコルによるファイル転送サポートは何の設定を行わなくてもそのまま使用できます。ISV が独自のプロトコルと通信層を追加しようと思ったら、このフレームワークで直接そのプロトコルや通信層を提供することができます。フレームワーク自体は、組み込みデバイスで使えるように必要最小限のものだけしか装備していません。そのため開発者は、Pocket PC とノートブックの間で通信する必要があるアプリケーションを簡単に作成することができます」。これは、二人の ECF コミッター、Remy Chi Jian Suen と Scott Lewis による説明です。

Project Dash (Eclipse Monkey)

Eclipse Monkey としても知られる Project Dash は、Java の場合の BeanShell と同じく、Eclipse Monkey のスクリプト作成を可能にします。

「簡単に言えば、Eclipse Monkey プロジェクトは「スクリプトを可能にする」Eclipse で、開発者が JavaScript (Rubyなど、その他のスクリプト言語をサポートするための拡張ポイントが提供されています) を使って Eclipse 環境のあらゆる側面を制御できるようにします。実行可能な例として、複数のシステムで統一した Eclipse を構成するスクリプトや、一連のアクションを実行するためのマクロ (挿入/変更コードを含む)、それにコード・スニペットの挿入などがあります」。Paul Colton (Eclipse Monkey リーダー、Aptana 社員) の説明です。

「スクリプト作成者が使用できる DOM は、あらかじめ組み込まれていない機能のサポートを追加するために全面的に拡張することができます。Eclipse Monkey では、Web コンテンツが含まれる Eclipse ビューを新規に作成できるのも強力な特徴の 1 つです。つまり、Eclipse との双方向通信によって完全な HTML/CSS/JavaScript ビューを作成することが可能で、例えばカーソルの置かれているキーワードをベースとしたリアルタイム Google 検索を表示するビューを作成することができます。また、コード・スニペットの RSS リーダーというのも可能な例の 1 つで、この場合、リンクがクリックされたときに RSS フィードから作業中の文書にスニペットを挿入することができます。Aptana (オープン・ソースの Eclipse をベースにした Ajax 開発環境) は、以上のようなさまざまな方法で存分に Eclipse Monkey を活用しています」。このように Colton は続けました。

EMF (Eclipse Modeling Framework)

EMF は、構造化モデルをベースにツールや他のアプリケーションをビルドするためのモデリング・フレームワーク兼コード生成ツールです。モデルを手早くビルドできるように EMF が提供している機能には、例えばモデルを XML およびその他のフォーマットにしておくためのサポートがあります。

「Eclipse Modeling Framework には、構造化データ・モデルをベースとしたアプリケーションのための強力な生成機能とランタイム機能が用意されています。単純なクラス図や XML スキーマ、さらには Java インターフェースからでも、モデルの完全な Java 実装とそのためのエディターを生成することが可能で、アプリケーションのパーシスタンス、通知、検証、変更記録のために EMF の機能を利用できます」。これは、Marcelo Paternostro (EMF コミッター、IBM 社員) の説明です。

「初めて EMF 2.3 を組み込んだ Europa では、開発者がそれぞれのモデルで Java 5 のコンセプトと機能を活用することができます。現在、EMF のメタモデル、Ecore、EMF コード・ジェネレーターでは Genericsが完全にサポートされるようになっています」。Paternostro はさらに続けます。「また、列挙型、注釈、拡張された for ループなど、他の重要な Java 5 言語機能もサポートされます。開発者には、EMF 2.2 ランタイムで実行できる 1.4 準拠のコードを生成するオプションも残されています」。

「その他にも、長い間待ち望まれていた重要な機能としては、Ecore モデル検証、注釈付き Java インターフェースをベースとしたコード生成の Ant サポート、そしてデフォルトの索引ベースの参照のシリアライゼーションに代わる、さらに堅牢な参照キーなどがあります。最後に、EMF 2.3 は細かい粒度の機能で提供される予定なので、不要なコードやユーザー・インターフェース、そして依存関係などを持ち込むことなく、プロジェクトや製品で一層柔軟に使用できるはずです」。

EMFT (Eclipse Modeling Framework Technology)

EMFT プロジェクトが開始された理由は、EMF を拡張あるいは補完する新しい技術にインキュベーション期間を設けるためです。これらの技術はやがて (有用であると認められた場合)、EMF になります。EMFT に見られる技術には、データベースに対する EMF モデルの包括的な検索、比較、維持機能などがあります。

GEF (Graphical Editing Framework)

GEF プロジェクトは、開発者が既存のアプリケーション・モデルを使って簡単に機能豊富なグラフィカル・エディターを作成できるようにするためのものです。GEF には、Draw2D として知られる Java2D と同じような軽量の表示層も含まれます。

「Europa リリースでの GEF 3.3 は、細かな機能の追加とバグ修正が行われているという点で、基本的にはメンテナンス・リリースと言えます。GEF チームがかなりの努力を費やしたのは、例えば Microsoft® Vista といった新規プラットフォームでのテスト、新しい Eclipse 3.3 リリースのエンジニアリング・ツールの採用など、Eclipse 3.3 の機能に GEF を協調させることです」。Anthony Hunter (GEF/GMF コミッター、IBM 社員) の言葉です。

GMF (Graphical Modeling Framework)

GMF プロジェクトは、EMF と GEF をベースとしたグラフィカル・エディター開発用の生成コンポーネントおよびランタイム・インフラストラクチャーを提供します。このプロジェクトが目指しているのは、これらのコンポーネントに加え、機能を説明する選択ドメイン・モデルの標準ツールを提供することです。

Richard Gronback (GMF リーダー、Borland 社員) は次のように話しています。「Eclipse Modeling Project 内で今でも活発で人気の高い GMF プロジェクトは、2.0 リリースではそのランタイムおよびツール・コンポーネントにいくつかの拡張を加え、EMF モデルを対象としたダイアグラム・ベースのエディター作成タスクをますます容易なものにしています。さらに GMF は、MDT の UML2 Tools コンポーネントと SOA Tools プロジェクトの BPMN モデラーの導入により、Eclipse エコシステム内にも 2 種類のクライアントが存在するようになりました」。

MDT (Model Development Tools)

MDT プロジェクトが焦点としているのは、Eclipse Modeling プロジェクト内の「ビッグ M」モデリングです。このプロジェクトには、2 つの大きな目的があります。1 つは業界標準メタモデルの実装を提供すること、そしてもう 1 つは、これらのメタモデルをベースとしたモデル開発用の標準ツールを提供することです。例えば、MDT プロジェクトには UML2、XSD、および OCL の (メタモデルとしての) 実装が含まれます。

M2T (Model To Text)

M2T プロジェクトは、モデルからのテキスト成果物の生成に焦点を当てています。プロジェクトの目的は以下の 3 つからなります。

  • 業界標準および事実上の Eclipse 標準となる、モデルからテキストを生成するエンジンの実装を提供すること
  • こうした言語の標準的な開発ツールを提供すること
  • こうした言語の共通インフラストラクチャーを提供すること

M2T プロジェクトは Europaでは、JET という小型のコンポーネントをリリースする予定です。

「JET (Java Emitter Templates) は JSP に端を発するコード・ジェネレーターで、Eclipse ワークスペース環境で機能するように設計されています。HTTP 要求に応じて HTML Web ページを作成する代わりに、JET では入力モデルが指定されると Eclipse リソース (ファイル、フォルダー、プロジェクト) を作成します。JET は単純な XML 文書や EMF (Eclipse Modeling Framework) ベースの文書をはじめ、多数の入力モデル・タイプを読み取ることが可能です」。これは、Paul Edler (JET リーダー、IBM 社員) による説明です。

「Europa リリースでの JET は、EMFT (Eclipse Modeling Framework Technologies) プロジェクトから、新たな M2T (Model to Text) プロジェクトに移されています。M2T プロジェクトは現在進行中であるため、JET と M2T はインキュベーション段階にあります。最終的には、M2T は他の Eclipse ベースのテンプレート言語 (openArchitectureWare および MTL の xPand。これは、OMG の MOF Model to Text 仕様の実装です) と、モデルからテキストへの変換言語の実装と使用の両方をサポートする共通インフラストラクチャーを組み込む予定です」。

Eclipse Mylyn (以前の Mylar)

Mylyn はタスクを焦点とした UI で、情報の多重定義を減らしてマルチタスクを容易にします。その仕組みは、タスクを Eclipse のファーストクラスのパーツとし、Bugzilla、Trac、JIRA などのリポジトリーを対象とした豊富なオフライン編集機能を統合することです。タスクが統合されると、Mylar は作業アクティビティーを監視して現在行う必要があるタスクに関連する情報を識別します。そしてこのタスクのコンテキストを使って、Eclipse UI を関連情報に集中させて、関連しない情報を隠すとともに関連する内容を自動的に検出します」。Mik Kersten (Mylar リーダー、Tasktop 社員) はこのように説明してくれました。

「Mylyn 2.0 でタスクをブラウズ、ナビゲートするのは、ファイルや Java 要素をブラウズ、ナビゲートするのと同様に簡単です。タスクの表示方法は柔軟で、最も関連するタスクに焦点を当て、作業セットで整理することができます。Eclipse JDT が Java 参照をナビゲートしやすくするのとまったく同じように、Mylyn 2.0では、広範囲にわたって存在しているハイパーリンクをクリックすると、ハイパーリンクがソース・コード内にあろうが改訂履歴内にあろうが、リンク先のタスクが参照されます」。

「Mylyn は、タスク・リポジトリーを操作するためのリッチ・インターネット・アプリケーション (RIA) のインフラストラクチャーおよび UI を提供します。つまり、Bugzilla、JIRA、Trac、Rally、CollabNet Enterprise Edition、XPlanner などの問題追跡ツールやプロジェクト管理ツールはいずれも Mylyn のリッチ・エディターで使用可能で、サーバーとのやりとりなしで瞬時に開き、オフライン時にも簡単にアクセスできるということです。現在、Mylyn の Task List はすべてのタスクに対する単一の受信トレイとして使えるようになっているため、E メール通知をオフにして E メールの受信トレイを整頓することができます」。

「Mylyn の根本的な生産性の良さは、タスク指向の UI が根拠となっています。この UI が、情報の多重定義を減らし、マルチタスクを容易にします。Mylyn 2.0 はほとんど瞬時にタスクのコンテキストを再度呼び出すことにより、タスクを重点とした作業を容易に行えるようにします。タスク・コンテキストのポップアップ・ダイアログやタスクの起動ダイアログなどの機能も追加されているため、既存の作業習慣を変えなくてもタスク指向の UI を簡単に導入できるようになっています。さらに、コンテキスト共有は簡素化されていて、チームをより強力にサポートするコンテキスト・エディターも提供されています」。

STP (SOA Tools Platform)

SOA 開発者が一様であることはあり得ません。そこで STP プロジェクトが目的としているのは、優れた品質のフレームワークとツールを組み合わせて、よく使われる SOA ソリューション技術でサービスを構成、デプロイする開発者を支援することです。

以下は Oisin Hurley (STP リーダー、IONA 社員) の説明です。「SOA Tools は今年半ばの大量の Eclipse リリース群に新たに追加されたプロジェクトで、その一環として我々は Java 注釈駆動型サービスの開発手法となる新しいフレームワークをシップする予定です。これらのフレームワークには、JAX-WS および SCA/Java、BPMN Modeler フレームワーク、BPEL コンパイラーなどがあります。サービスのパッケージ化と提供を支援するため、複数のデプロイメント・プロファイルとマルチパッケージ・デプロイメントの構成を可能にする高度なデプロイメント・フレームワークも作成しました。このフレームワークは WTP Server フレームワークと統合されるため、単一サーバーにデプロイするための既存のコードでも確実に再利用することができます」。

TPTP (Eclipse Test & Performance Tools Platform)

TPTP が実現するオープン・プラットフォームは、ソフトウェア開発者が独自のテスト・ツールやパフォーマンス・ツール (オープン・ソースと市販用の両方) をビルドできるようにするための強力なフレームワークとサービスを提供します。ビルドしたツールは、このプラットフォームにも他のツールにも簡単に統合することができます。組み込みシステム、スタンドアロン・システム、エンタープライズ・システム、ハイパフォーマンス・システムなどの多岐にわたるコンピューティング・システムをサポートするこのプラットフォームは、できる限り広範なシステムを網羅するために今後もサポートを拡張し続けるはずです。

「TPTP はテスト、プロファイル作成、監視のための豊富なツールを提供しますが、TPTP の真価は、中心となる一般ユーザーの使用ケースから初めて実感できるものです」。こう言ったのは、Harm Sluiman (TPTP コミッター、IBM 社員) です。「TPTP で注目すべき新しい特徴 (通常の保守機能とバグの修正は別として) は、JVMPI から JVMTI に移行したことにより、一層強力かつ安定したヒープとスレッドの分析サポートが実現し、そして進行中の Java 6 もサポートできるようになった点です」。

WTP (Web Tools Platform)

WTP プロジェクトは、J2EE Web アプリケーション開発用ツールで Eclipse Platform を拡張します。WTP プロジェクトに含まれるのは、HTML、JavaScript、CSS、JSP、SQL、XML、DTD、XSD、および WSDL 対応のソース・エディター、XSD および WSDL 対応のグラフィカル・エディター、J2EE プロジェクトの機能、ビルダー、モデル、そして J2EE ナビゲーターと Web サービス・ウィザードおよびエクスプローラーです。一般的に言って、完了しなければならないタスクが Web 開発に関連する場合、WTP の中に大抵、ふさわしいツールが見つかります。

「WTP 2.0 の Europa リリースは画期的です。その理由の一端となっているのは、WTP のコンポーネント化が改善されたため、ユーザーは Europa の Discovery Site から XML ツールだけをインストールしたり、Java に関連しない Web ツール (HTML、CSS など) だけをインストールしたりすることができる点です。さらに、これらの小型コンポーネントの場合、JDT が持ち込まれることはもうありません。このような小規模なインストールは、今までコミュニティーが大いに待ち望んでいたことなので、まったく新しいユーザーのグループや、他の Eclipse ベースのプロジェクトが統合対象として興味を持つことを期待しています」。David Williams (WTP プロジェクト管理委員会の共同リーダー、IBM 社員) の言葉です。

「さらにこのリリースでは、JEE Web 開発用の Java 関連ツールが一段と豊富です。JSF と Dali のサブプロジェクト (Java パーシスタンス・ツール用) がインキュベーション段階を終え、JEE アプリケーションでこれらの標準を使用するための優れたツールを提供していることも幸いとなっています」。Williams はさらにこう続けました。「JEE 5 アプリケーションおよびサーバーの基本的サポートを提供するこのリリースでは、Axis2 といった新しい標準に対する貢献もしています」。

「必要な作業はまだ残っていますが、ユーザビリティー、そして「そのまますぐに使える」というエクスペリエンスの点では改善を遂げています。その一例は、盛んに求められていた HTML、JSP、JSF の編集用ビジュアル・エディターに対する貢献で、これによって開発者が Web ページを作成する際の生産性は向上すること間違いありません。また、ユーザーが初めて単純なアプリケーションを作成するときのための組み込み「プレビュー」サーバー、そして上級ユーザーを対象としたインストール可能なサーバー・アダプターを検索するための新しい「ディスカバリー」メカニズムも用意しています」。


無料の Europa を試してみてください

この記事では、技術的に関連する内容の説明がまだ残っていますが、できるだけ効率的に Europa リリース群を説明しました。このような記事にできたのは、それぞれのプロジェクトについて、該当するプロジェクト開発者の言葉を集め、開発者同士の独特な視点を説明したためです。私自身の見方からすると、Callisto リリースと Europa リリースの違いが確証付けているのは、Eclipse は現在成長中であり、今後もソフトウェア開発およびデプロイメントのプラットフォームとして存続するということです。何も待つ必要はありせん。今すぐ Europe を試してみてください。

参考文献

学ぶために

製品や技術を入手するために

  • IBM alphaWorksEclipse 技術の最新ダウンロードを調べてください。
  • IBM 製品の評価版をダウンロードして、DB2®、Lotus®、Rational®、Tivoli®、および WebSphere® のアプリケーション開発ツールとミドルウェア製品を使ってみてください。
  • IBM ソフトウェアの試用版を使用して、次のオープン・ソース開発プロジェクトを革新してください。ダウンロード、あるいは DVD で入手できます。

議論するために

  • developerWorks blogs から developerWorks コミュニティーに加わってください。
  • Eclipse に関する質問を議論するための最初の場所として、Eclipse Platform newsgroupsがあります (このリンクをクリックすると、デフォルト Usenet ニュース・リーダー・アプリケーションが起動され、eclipse.platform が開きます)。
  • Eclipse newsgroups には Eclipse を利用し、拡張することに関心を持つ人達のために、さまざまなリソースが用意されています。
  • IRCでは、他の Eclipse 開発者やコミッターとチャットできます。

コメント

developerWorks: サイン・イン

必須フィールドは(*)で示されます。


IBM ID が必要ですか?
IBM IDをお忘れですか?


パスワードをお忘れですか?
パスワードの変更

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


お客様が developerWorks に初めてサインインすると、お客様のプロフィールが作成されます。会社名を非表示とする選択を行わない限り、プロフィール内の情報(名前、国/地域や会社名)は公開され、投稿するコンテンツと一緒に表示されますが、いつでもこれらの情報を更新できます。

送信されたすべての情報は安全です。

ディスプレイ・ネームを選択してください



developerWorks に初めてサインインするとプロフィールが作成されますので、その際にディスプレイ・ネームを選択する必要があります。ディスプレイ・ネームは、お客様が developerWorks に投稿するコンテンツと一緒に表示されます。

ディスプレイ・ネームは、3文字から31文字の範囲で指定し、かつ developerWorks コミュニティーでユニークである必要があります。また、プライバシー上の理由でお客様の電子メール・アドレスは使用しないでください。

必須フィールドは(*)で示されます。

3文字から31文字の範囲で指定し

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


送信されたすべての情報は安全です。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=Open source
ArticleID=244846
ArticleTitle=Eclipse Europa の駆け足ツアー
publish-date=06292007