19

SWT/JFace を使用する代わりに、アプリケーションのベースとして Eclipse リッチ クライアント プラットフォームを選択する理由は何ですか?

4

4 に答える 4

23

Eclipse RCP は単なる GUI (SWT/JFace) ではなく、OSGiベースのプラットフォームです。

したがって、次の目的で RCP フレームワークを選択します。

  • さまざまなモジュールをより適切に定義する
  • ライフサイクルとバージョンの互換性を管理する
  • クラスローダの問題を切り分けます。

アプリケーションが 1 つのモノリシック GUI フォントエンドにすぎない場合、RCP は少しやり過ぎかもしれません。

于 2009-10-01T18:03:33.083 に答える
17

VonCが指摘した点(OSGiプラットフォームの優れた点:モジュール性、クラスローダーの分離、拡張可能なアーキテクチャー)に加えて、Eclipse RCPは、最終製品の全体的な開発を容易にする可能性のある多くのアプリケーションレベルのサービスを提供します。

Eclipse RCPを使用すると、次のことが可能になります。

  • 準備ができて拡張可能なUIアプリケーションフレームワーク
    • 個別のアプリケーション領域を分離するための視点
    • UIの再利用可能なブロックに独自のライフサイクルを提供するためのビューエディター
    • キーバインディング、コンテキストハンドラー、およびツールバーとメニューへのバインディングを使用したコマンドの抽象化
  • 日食生態系全体のすべての良いもの

もちろん、後者の部分は、それらが提供する利点を得るために、EclipseRCPプラットフォームである巨大なものを使用する必要があることを必ずしも意味しません。

アプリケーションの範囲によっては、Equinoxを基盤となるOSGiコンテナーとして使用し、その上に独自のGUIクライアントを構築することをお勧めします。

また、SWT / JFaceランドでGUIフレームワークを決定する際には、EclipseRCPが町で唯一のゲームではないことにも注意してください。あなたのニーズによりよく合うかもしれない深刻な候補があります:

  • Riena Platform Projectは、 「多層エンタープライズクライアント/サーバーアプリケーションを構築するための基盤」という独自の言葉を引用しています。
  • E4プロジェクトプロジェクトは、はるかにモジュール化された設計を念頭に置いて、次世代のEclipseRCPプラットフォームを構築するために進行中の作業です。

編集: Eclipse e4プロジェクトは、私の元の回答が投稿されて以来、進行中の作業から卒業し、今では完全に使用可能なリッチクライアントアプリケーションフレームワーク/プラットフォームになっています。現在、最新のEclipse 4.2(Indigo)IDEの基盤となるプラットフォームとして使用されるまでに成熟しています。

于 2010-01-13T09:06:54.230 に答える
5

2 ペニーの価値しかありませんが、バニラの SWT/JFace は学習曲線が少ない可能性があります。私はそれらが単純な GUI であるという事実が気に入っています。(RCP のように) 「プラットフォーム」を学ぶ必要はなく、SWT コンポーネントを理解して GUI を構築するだけです! 全体として、私はそれがより単純だと思います (しかし、私は RCP についてあまり知りません!)。

于 2010-01-19T20:47:36.110 に答える