2

我即将编写一个小型桌面应用程序,主要应该在 Windows 和 Mac OS X 上运行。到目前为止,我的选择是:

  • 我通常使用 Java + Swing 来处理这类东西,但这个应用程序应该非常小(大约 1Mb),我不想在 Windows 版本上嵌入 ~26mb JRE 或要求用户安装它。
  • 我对 Flex 和 AIR 有很好的体验,这个应用程序的用户最终会使用 Flash 播放器(该应用程序大部分时间都会输出 swf 文件)。但是性能很重要(有点),我想编写一个具有原生外观的应用程序。
  • 我也一直在考虑realBasic。它看起来很有希望并且很容易上手。但是,我真的不想写基本的。距离我编写基本程序已经很长时间了(大约 10 年)。另外,我找不到很多支持者。

我在 C/C++ 方面没有任何工作经验。这是一个非常小的项目,我想在大约一个月内完成。有什么建议么?

4

5 回答 5

5

REALbasic 是创建跨平台应用程序的好方法。该语言完全面向对象,并且与您可能使用过的任何 BASIC 版本相比,它更像 Java。

REALbasic 确实可以编译为具有原生外观的原生应用程序,但可执行文件并不小。即使是一个空的应用程序也会超过 1MB。

但是,鉴于您的应用程序将输出 Flash 文件,看来 Flex/AIR 可能对这个项目最有意义。

于 2009-09-03T16:33:15.450 回答
4

我会说坚持使用 Java + Swing,与相反的信念不同,您可以使用 Swing 制作漂亮的程序。您需要付出一些努力来设置一些属性,并确保根据您所在的操作系统创建文件的位置,但它比 C++ 或 C 做的工作要少得多。即使您什么都不做,您的应用程序看起来也一样并且可以继续工作所有主要操作系统(Linux、Windows、Mac Os X)。

对于一些参考,请查看mac-widgets这些与 os x 提供的对应物没有什么不同。这家伙还有一个博客,他解释了他是如何做到的。在 java 中,您可以覆盖任何东西以将其塑造成您想要的样子。

至于 JRE install os x 预装了 java 没有问题,对于 Windows,你可以使用 exe 包装器,它会检查正确的 JRE 并为你安装它,但正如它已经指出的那样,大多数计算机都预装了 java。

于 2009-09-03T14:33:51.063 回答
1

如果您想要在 Windows 和 OS X 上轻松运行的单一代码库,您基本上有两种选择:

  • 爪哇
  • 一个网络应用程序。

我对 Java 路径有很好的经验。程序运行得相当好,并且您在 Swing GUI 中拥有强大的功能(但需要一些时间来适应)。如果您使用 Java Web Start 启动,您可以控制部署,很容易提示用户下载 JRE(最新版本的下载量要小得多),您可以选择 Nimbus 外观(我认为这是非常好)或特定于平台的外观和感觉,在你的主要方法中只有一行。

在我看来,唯一的缺点是 JRE 下载。我会接受这一点并继续该项目:) 如果没有大量的肘部油脂,您将不会得到更好的结果。

于 2009-09-03T16:32:54.513 回答
0

JRE 在基于 Windows 的目标用户中真的那么少吗?我相当肯定大多数制造商现在在他们的机器上发布了最新版本的 Java。如果它很少见,那么使用 SWT 并编译为本机可能是一种选择¹。

¹ - SWT 作为(据我所知)将 Swing 内容编译为本机基本上意味着您需要整个 JRE。我失败的记忆告诉我这是由于一些奇怪的许可证要求。

于 2009-09-03T12:53:58.813 回答
0

一个网络应用程序对你有多好?如今,浏览器的 GUI 功能对于大多数事情(如果浏览器不是 IE)已经足够了,除了像游戏这样的高清实时图形。http://labs.mozilla.com/prism/之类的东西可能符合要求吗?

于 2009-09-03T13:26:35.083 回答