SWT/JFace 还是 Eclipse RCP?

发布于 2024-08-06 07:18:10 字数 58 浏览 12 评论 0原文

选择 Eclipse 富客户端平台作为我的应用程序基础而不是仅使用 SWT/JFace 的原因有哪些?

Which are the reasons to choose the Eclipse Rich Client Platform as the base of my application, instead of just using SWT/JFace?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

只怪假的太真实 2024-08-13 07:18:10

Eclipse RCP 不仅仅是一个 GUI (SWT/JFace),还是一个 OSGi< /a> 为基础的平台。

因此,您选择 RCP 框架的目的是:

  • 更好地定义不同模块、
  • 管理其生命周期、以及版本兼容性、
  • 隔离 类加载器问题

如果您的应用程序只是一个整体 GUI 字体端,那么 RCP 可能有点大材小用。

Eclipse RCP is not just a GUI (SWT/JFace), but an OSGi-based platform.

So, you would choose the RCP framework in order to:

  • have a better definition of your different modules
  • manage their lifecycles, and versions compatibility
  • isolate classloader issues.

If your application is just one monolithic GUI font-end, RCP might be a bit overkill.

一身仙ぐ女味 2024-08-13 07:18:10

除了 VonC 指出的要点(OSGi 平台的优点:模块化、类加载器隔离、可扩展架构),Eclipse RCP 提供了许多应用程序级服务,可以简化最终产品的整体开发:

使用 Eclipse RCP,您将获得:

  • 就绪且可扩展的 UI 应用程序框架
    • 分离离散应用领域的观点
    • 视图编辑器,用于提供可重用的 UI 块以及自己的生命周期
    • 命令抽象,包含键绑定、上下文处理程序以及工具栏和菜单的绑定
  • 整个 Eclipse 生态系统的所有优点

当然 - 后一部分并不一定意味着您必须使用 Eclipse RCP 平台这个庞然大物才能获得这些优势提供。

根据应用程序的范围,您最好只使用 Equinox 作为底层 OSGi 容器,并在此基础上构建您自己的 GUI 客户端。

还要记住,在 SWT/JFace 领域做出 GUI 框架决策时,Eclipse RCP 不再是唯一的选择。有一些强有力的竞争者可能会更好地满足您的需求:

  • Riena Platform Project 正在引用他们自己的话“构建多层企业客户端/服务器应用程序的基础”
  • E4 项目该项目是一项正在进行的工作,旨在构建下一代 eclipse RCP 平台,并考虑到更多的模块化设计。

编辑:
自从我最初的答案发布以来,Eclipse e4 项目已经不再是一个正在进行的工作,现在已经成为一个完全可用的富客户端应用程序框架/平台。它已经成熟到现在被用作最新 Eclipse 4.2 (Indigo) IDE 的底层平台。

In additions to points that VonC has pointed out (OSGi platform goodies: modularity, classloader isolation, extensible architecture), the Eclipse RCP provides many application level services that might ease the overall development of your final product:

With Eclipse RCP you'll get:

  • Ready and extensible UI application framework
    • perspectives for separating discrete application areas
    • views and editors for providing reusable blocks of UI with lifecycle of their own
    • Commands abstraction with key bindings, contextual handlers and bindings to toolbars and menus
  • All the goodies of the whole eclipse ecosystem

Of course - the latter part does not necessarily mean you have to use the behemoth that is Eclipse RCP platform to gain the advantages those offer.

Depending on the scope of your application, you might do well to just use Equinox as an underlying OSGi container and build your own GUI client on top of that.

Also keep in mind that Eclipse RCP is no more the only game in town when making a decision of GUI frameworks in SWT/JFace land. There are serious contenders that might suite your needs better:

  • Riena Platform Project is quoting their own words "the foundation for building multi-tier enterprise client/server applications"
  • E4 Project project is a work in progress to build the next generation of the eclipse RCP platform with much more modular design in mind.

Edit:
Eclipse e4 project has graduated from being just a work in progress since my original answer was posted and now has become a fully usable rich client application framework/platform of its own. It has matured to the point where it is now being used as an underlying platform for the latest Eclipse 4.2 (Indigo) IDE.

春花秋月 2024-08-13 07:18:10

虽然只值我的 2 便士,但普通的 SWT/JFace 的学习曲线可能更简单。我喜欢它们只是简单的 GUI,您不需要学习“平台”(如 RCP 方式),只需掌握 SWT 组件并构建 GUI!总的来说,我认为它更简单(但我对 RCP 不太了解!)。

Just my 2 pennies worth, but vanilla SWT/JFace can be less of a learning curve. I like the fact they're just simple GUIs, you don't need to learn the "platform" (as in the RCP way), just get to grips with the SWT components and build you're GUI! Overall, I see it as simpler (but then I don't really know much about RCP!).

能否归途做我良人 2024-08-13 07:18:10

Eclipse 4的依赖注入机制是一笔巨大的财富,要选择Eclipse RCP,
现在有了E4,平台可以非常轻量级,

添加到这个e4工具中,加上它的模型编辑器,让你节省很多时间

Eclipse 4 dependency injection mechanism is a great asset, to choose Eclipse RCP,
and Now with E4, the platform can be very lightweight,

Add to this e4 tools with it model editor, let you save a lot of time

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文