Java桌面应用程序框架

发布于 2024-07-04 03:33:41 字数 1450 浏览 7 评论 0原文

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

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

发布评论

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

评论(12

浮生未歇 2024-07-11 03:33:42
  • 易于使用:我有在Eclipse上进行开发的经验,不得不说理解它的开发模型并不容易。 当然,对于基本的东西,它有一些向导可以使操作变得更容易,但对于稍微复杂一点的东西,它就很困难。 我不知道 Netbeans,但我听说它更容易。
  • 一致的API:我认为Eclipse在这方面胜出。 它在 OSGI 上运行(尽管带来了一些复杂性)并且具有几乎所有内容的插件扩展。 它似乎是插件开发的首选平台,所以我可以假设它是可靠的。
  • 文档:到目前为止,Eclipse 胜出。 Eclipse 站点的帮助非常好,邮件列表中有很多用户问题。
  • Easy to use: I have experience developing on Eclipse and I have to say it's not easy to understand its development model. Sure for basic stuff it has some wizards that make easier, but for something a little more complex it's just difficult. I don't know about Netbeans, but I heard its easier.
  • Consistent API: I think Eclipse wins in this aspect. It runs over OSGI (brings some complexity though) and has plugins extensions for pretty much everything. It seems to be the platform of choice for plugin development, so I can assume it's reliable.
  • Documentation: Eclipse wins by far. The help from eclipse site is excelent and the mailing list has plenny of users questions.
我偏爱纯白色 2024-07-11 03:33:42

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

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

如果您有兴趣,请查看这本书: http://www.amazon.com/Eclipse-Rich -客户端平台应用程序/dp/0321334612

I can't say enough about the Eclipse RCP platform. I would recommend it for any Java desktop app development.

It's free, has great tutorials, and allows cross-platform development of rich desktop applications that use native OS windowing toolkit, meaning that your application will look native in any platform. It also has a clean API that stays out of your way, and makes deploying to any platform a piece of cake.

If your interested check out this book: http://www.amazon.com/Eclipse-Rich-Client-Platform-Applications/dp/0321334612

累赘 2024-07-11 03:33:42

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

这实际上取决于您正在编写的内容,但根据我从使用 Eclipse 中学到的知识,它实际上只适合编写需要使用各种视图编辑数据的应用程序(就像编辑代码一样)。

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

I have used Eclipse as a framework base but it was mostly just using SWT-- we didn't really use much of the RCP.

It really depends on what you're writing, but from what I have learned from using Eclipse it is really only suited for writing an app that involves you editing data using various views (just like editing code).

Anything more random that than can cause you to start pushing the framework in a direction it wasn't designed and causing massive fail.

水晶透心 2024-07-11 03:33:42

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

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

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

You'll use Swing to develop your application because any other windowing framework is useful only if you have a previous knowledge or the appropriate background.

You can rely on http://www.javadocking.com/ to streamline you application.

If your application requirements are highly focused on the user interface, maybe you can look in another direction like Adobe Air.

乖乖公主 2024-07-11 03:33:42

RCP 有一个更大的学习曲线,但是一旦您学习了基础知识,Eclipse IDE 本身就可以很好地支持构建 RCP 应用程序。 我只为 NetBeans 构建了一个插件(没有构建成熟的应用程序),并且学习曲线比 RCP 应用程序要短。 Eclipse 富客户端平台:设计、编码和打包 Java(TM) 应用程序 提供了构建 RCP 应用程序的详细介绍。

RCP has a bigger learning curve, but once you learn the basics the Eclipse IDE itself supports building RCP applications very well. I have only built a plugin for NetBeans (not build a full-fledged application), and the learning curve was lesser than for the RCP application. The book Eclipse Rich Client Platform: Designing, Coding, and Packaging Java(TM) Applications provides a detailed introduction to building RCP applications.

娇纵 2024-07-11 03:33:42

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

Please see some of the open source applications at http://www.eclipse.org/community/rcp.php before opining that RCP is only for building a text editor. Thanks.

故事还在继续 2024-07-11 03:33:42

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

I have a similar task and I am also considering different frameworks. I have some experience with Eclipse (~4 months developing RCP) and now Netbeans (played around for a couple of days). IMHO these frameworks are too complicated. You just end up debugging into Eclipse-specific plugin loaders trying to figure out why you get a ClassNotFoundException or a NullPointer. The same story with NetBeans: somehow somewhere somewhat reads out xml config files and creates UI from that, cool, as long as you follow the tutorial. And of course you can't develop and Eclipse-based RCP using some other IDE, NB is also very jealous about its usage (unless you do some hacks like I did).
What I'm lacking is a clear way to debug my threads from main to action performed. Instead I'm always told what I have to do to avoid exceptions. And so I have to keep my fingers crossed each time I'm trying to pull something new. And it never works out the first time.
Now I thought about the features I need and I looked out for smaller projects that aim at specific functionality like plugin management eg. And there are plenty. Just compile a list of the functionality you need and start adding smaller frameworks by integrating them into your project. This also makes sense since your project should consume less RAM in the end.

陌上青苔 2024-07-11 03:33:42

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

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

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

I've done a little work with both, but only on relatively simple applications. Both seem to have roughly equal capabilities. I personally prefer the Netbeans platform as it makes more sense to me.

You should also consider JSR-296, the Swing Application Framework. It provides a basic framework for building Swing Applications, managing application resources, state, etc, but without as much "baggage" as Netbeans and Eclipse. Netbeans IDE has a number of tools for building applications on the SAF. See https://appframework.dev.java.net/ for more info.

Without knowing more about your application, it's hard to point you at the appropriate strengths/weaknesses of the two platforms.

南汐寒笙箫 2024-07-11 03:33:42

如果您确实想避免跨平台维护,那么可以使用 Swing。 这将为您购买所有平台。 RCP 需要每个平台的本机库。

我们在 Swing 方面有过很好的经验。

If you really want to avoid crossplatform maintainance then work with Swing. This buys you all platforms. RCP requires native libraries for each platform.

We have had good experiences with Swing.

弥枳 2024-07-11 03:33:42

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

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

I would use eclipse RCP when you really need a platform to built on top, not just "widgetery" like swing or swt. RCP is rock solid and consistent, modular and very flexible. Once you master it, you get huge benefits. Being a platform it give you the most commonly used things - preference, configurations, automatic updates, layout management, branding and things like that. You build a product, not an app. But learning curve is pretty steep in the beginning.

Swing on the other hand is not a platform, you will re-invent the wheel by writing your own things I mentioned above. But yes, swing is faster to learn and get started. I think it fits better for smaller applications with shorter life span.

狠疯拽 2024-07-11 03:33:42

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

Look some of the open source applications at http://www.eclipse.org/community/rcp.php before opening that RCP is only for building a stuff.

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