SWT/JFace を使用する代わりに、アプリケーションのベースとして Eclipse リッチ クライアント プラットフォームを選択する理由は何ですか?
4 に答える
VonCが指摘した点(OSGiプラットフォームの優れた点:モジュール性、クラスローダーの分離、拡張可能なアーキテクチャー)に加えて、Eclipse RCPは、最終製品の全体的な開発を容易にする可能性のある多くのアプリケーションレベルのサービスを提供します。
Eclipse RCPを使用すると、次のことが可能になります。
- 準備ができて拡張可能なUIアプリケーションフレームワーク
- 個別のアプリケーション領域を分離するための視点
- UIの再利用可能なブロックに独自のライフサイクルを提供するためのビューとエディター
- キーバインディング、コンテキストハンドラー、およびツールバーとメニューへのバインディングを使用したコマンドの抽象化
- 日食生態系全体のすべての良いもの
- アプリケーションのインストールと自動更新を管理するためのp2プロビジョニング
- ECF通信フレームワーク
- BIRTレポートツール
- EMFおよびモデリングツール
- さらに多く...
もちろん、後者の部分は、それらが提供する利点を得るために、EclipseRCPプラットフォームである巨大なものを使用する必要があることを必ずしも意味しません。
アプリケーションの範囲によっては、Equinoxを基盤となるOSGiコンテナーとして使用し、その上に独自のGUIクライアントを構築することをお勧めします。
また、SWT / JFaceランドでGUIフレームワークを決定する際には、EclipseRCPが町で唯一のゲームではないことにも注意してください。あなたのニーズによりよく合うかもしれない深刻な候補があります:
- Riena Platform Projectは、 「多層エンタープライズクライアント/サーバーアプリケーションを構築するための基盤」という独自の言葉を引用しています。
- E4プロジェクトプロジェクトは、はるかにモジュール化された設計を念頭に置いて、次世代のEclipseRCPプラットフォームを構築するために進行中の作業です。
編集: Eclipse e4プロジェクトは、私の元の回答が投稿されて以来、進行中の作業から卒業し、今では完全に使用可能なリッチクライアントアプリケーションフレームワーク/プラットフォームになっています。現在、最新のEclipse 4.2(Indigo)IDEの基盤となるプラットフォームとして使用されるまでに成熟しています。
2 ペニーの価値しかありませんが、バニラの SWT/JFace は学習曲線が少ない可能性があります。私はそれらが単純な GUI であるという事実が気に入っています。(RCP のように) 「プラットフォーム」を学ぶ必要はなく、SWT コンポーネントを理解して GUI を構築するだけです! 全体として、私はそれがより単純だと思います (しかし、私は RCP についてあまり知りません!)。