17

我正在设计和构建一个桌面应用程序。我正在考虑使用 eclipse 或 netbeans 作为这个应用程序的基础。但是,我从来没有在这两个平台上构建过。我个人倾向于使用netbeans,因为它看起来像那个平台是一个更容易学习的曲线。但是,我想问那些在这些平台上实际构建过的人,在此之前哪个更容易使用?

我个人对 easer 的定义如下:

  • 易于上手

  • 一致且符合逻辑的 API

  • 良好的文档

  • 易于构建和部署

非常感谢,

乔什

4

12 回答 12

6

关于 Eclipse RCP 平台,我不能说太多。我会推荐它用于任何 Java 桌面应用程序开发。

它是免费的,有很棒的教程,并允许跨平台开发使用本机操作系统窗口工具包的丰富桌面应用程序,这意味着您的应用程序在任何平台上看起来都是本机的。它还有一个干净的 API,不会妨碍您,使部署到任何平台变得轻而易举。

如果你有兴趣看看这本书:http ://www.amazon.com/Eclipse-Rich-Client-Platform-Applications/dp/0321334612

于 2008-09-09T00:42:40.477 回答
2
  • 易于使用:我有在 Eclipse 上开发的经验,我不得不说理解它的开发模型并不容易。当然,对于基本的东西,它有一些使事情变得更容易的向导,但对于更复杂的东西,它就很难了。我不了解 Netbeans,但我听说它更容易。
  • 一致的 API:我认为 Eclipse 在这方面胜出。它在 OSGI 上运行(虽然带来了一些复杂性),并且几乎所有东西都有插件扩展。它似乎是插件开发的首选平台,所以我可以假设它是可靠的。
  • 文档:Eclipse 胜出。eclipse 站点的帮助非常好,邮件列表中有很多用户问题。
于 2008-09-09T00:40:57.470 回答
1

我使用 Eclipse 作为框架基础,但它主要是使用 SWT——我们并没有真正使用太多的 RCP。

这真的取决于你在写什么,但从我从使用 Eclipse 中学到的东西,它真的只适合编写一个涉及使用各种视图编辑数据的应用程序(就像编辑代码一样)。

任何更随机的事情都可能导致您开始将框架推向非设计的方向并导致大规模失败。

于 2008-09-09T00:24:01.940 回答
1

您将使用 Swing 来开发您的应用程序,因为任何其他窗口框架只有在您具有先前的知识或适当的背景时才有用。

您可以依靠http://www.javadocking.com/来简化您的应用程序。

如果您的应用程序要求高度集中在用户界面上,也许您可​​以看看另一个方向,例如 Adob​​e Air。

于 2008-09-09T00:25:19.253 回答
1

RCP 具有更大的学习曲线,但是一旦您学习了基础知识,Eclipse IDE 本身就可以很好地支持构建 RCP 应用程序。我只为 NetBeans 构建了一个插件(没有构建一个成熟的应用程序),学习曲线比 RCP 应用程序要小。Eclipse Rich Client Platform: Designing, Coding, and Packaging Java(TM) Applications一书详细介绍了构建 RCP 应用程序。

于 2008-09-09T01:17:09.457 回答
1

在认为 RCP 仅用于构建文本编辑器之前,请查看http://www.eclipse.org/community/rcp.php上的一些开源应用程序。谢谢。

于 2008-09-09T08:08:24.883 回答
1

Eclipse RCP 简介。

于 2008-09-16T06:29:08.137 回答
1

我对两者都做了一些工作,但只针对相对简单的应用程序。两者似乎具有大致相同的能力。我个人更喜欢 Netbeans 平台,因为它对我来说更有意义。

您还应该考虑 JSR-296,即 Swing 应用程序框架。它为构建 Swing 应用程序、管理应用程序资源、状态等提供了一个基本框架,但没有 Netbeans 和 Eclipse 那么多的“包袱”。Netbeans IDE 有许多用于在 SAF 上构建应用程序的工具。有关更多信息,请参阅https://appframework.dev.java.net/

如果不了解您的应用程序的更多信息,就很难指出这两个平台的适当优势/劣势。

于 2008-09-19T17:22:36.017 回答
1

我有一个类似的任务,我也在考虑不同的框架。我对 Eclipse(大约 4 个月的 RCP 开发)和现在的 Netbeans(玩了几天)有一些经验。恕我直言,这些框架太复杂了。您最终只是调试 Eclipse 特定的插件加载器,试图找出为什么会得到 ClassNotFoundException 或 NullPointer。NetBeans 也有同样的情况:只要您按照教程进行操作,就可以在某种程度上读取 xml 配置文件并从中创建 UI,这很酷。当然,你不能使用其他 IDE 开发和基于 Eclipse 的 RCP,NB 也非常嫉妒它的使用(除非你像我一样做一些 hack)。我缺乏的是一种清晰的方法来调试我的线程从主要到执行的操作。相反,我总是被告知我必须做什么来避免异常。所以每次我试图拉出新的东西时,我都必须保持手指交叉。它从来没有第一次成功。现在我考虑了我需要的功能,并寻找针对特定功能的小型项目,例如插件管理。而且有很多。只需编译您需要的功能列表,然后通过将较小的框架集成到您的项目中来开始添加它们。这也是有道理的,因为您的项目最终应该消耗更少的 RAM。只需编译您需要的功能列表,然后通过将较小的框架集成到您的项目中来开始添加它们。这也是有道理的,因为您的项目最终应该消耗更少的 RAM。只需编译您需要的功能列表,然后通过将较小的框架集成到您的项目中来开始添加它们。这也是有道理的,因为您的项目最终应该消耗更少的 RAM。

于 2008-12-17T00:47:02.807 回答
1

如果您真的想避免跨平台维护,请使用 Swing。这将为您购买所有平台。RCP 需要每个平台的本地库。

我们对 Swing 有很好的体验。

于 2010-09-01T17:44:30.163 回答
0

当你真的需要一个构建在上面的平台时,我会使用 eclipse RCP,而不仅仅是像 swing 或 swt 这样的“小部件”。RCP 坚如磐石、始终如一、模块化且非常灵活。一旦掌握了它,您将获得巨大的收益。作为一个平台,它为您提供最常用的东西——偏好、配置、自动更新、布局管理、品牌和类似的东西。您构建的是产品,而不是应用程序。但是一开始的学习曲线非常陡峭。

另一方面,Swing 不是平台,您将通过编写我上面提到的自己的东西来重新发明轮子。但是,是的,swing 学习和上手的速度更快。我认为它更适合寿命较短的小型应用。

于 2009-04-17T13:30:23.413 回答
0

在打开 RCP 仅用于构建东西之前,请查看 http://www.eclipse.org/community/rcp.php上的一些开源应用程序。

于 2013-11-20T03:53:57.920 回答