0

我只是想问一下 REALStudio 或 Runtime Revolution 是否还有其他选择?

不是在寻找类似 .NET 框架或插件的东西。我希望它像前面提到的 IDE 一样完全独立。

它也应该是跨平台的。

注意: 请不要提及 Java。我已经知道了。

为了清楚起见,我正在寻找一个可以让我为 Windows、Mac OS X 和 Linux 创建桌面应用程序的编程环境......

4

3 回答 3

1

通过回答这个问题,我仍然觉得我在黑暗中射击。目前尚不清楚您是否正在寻找一种编程语言和 GUI 工具包,或者您是否只是想要一个跨平台的 IDE。还不清楚您为什么要放弃 REAL Studio,因为它似乎满足您的要求。

无论如何,这里确实有很多选择,特别是如果您不需要使用 REALbasic 语言的选项。我只能说说我熟悉的和有使用经验的。其他人肯定可以告诉你更多关于动态语言的信息,比如 Perl、Python、Ruby 等。

首先,我不确定您为什么认为 .NET Framework 不是“完全独立的”。是的,它需要一个运行时,就像 Java 一样。但是这两种托管语言因需要运行时而受到了相当糟糕的批评。人们似乎忘记了用 C 和 C++ 编译的程序通常也需要运行时(至少在 Windows 上是这样)。

我会再看一下.NET。它是一个非常易于使用、快速的开发环境,非常具有 REALbasic 的风格。VB.NET 保留了很多语法,同时为您(在我看来)带来了更强大的功能。由于几乎所有桌面应用程序都应该使用安装程序(安装程序)分发,因此运行时的要求实际上不是问题。您的安装程序应该在安装应用程序的同时安装必要的依赖项——用户永远不会更聪明。

当然,生成具有真正原生用户界面的桌面应用程序在您的所有三个目标平台上充其量都是困难的。Windows、Mac OS X 和 Linux 都有非常不同的平台约定,即使您可以找到可以让您生成在所有这些平台上运行的可执行文件的环境,但它们都不会生成实际上看起来像本机的界面应用。我对此非常挑剔,你会发现 Mac 用户也是如此。Windows 和 Linux 用户更容易接受,但遵循标准平台约定是使您的应用易于使用和易于理解的关键。符合用户期望的行为并利用本机小部件具有许多开发人员(通常倾向于重新发明轮子)最近似乎忘记的优势。

绝对最好的做法(在我看来)是用 C++ 之类的可移植语言编写代码,并使用为每个平台提供的工具创建用户界面(对于 Windows,您可以使用 Windows API,或者提供的 WinForms 或 WPF由 .NET 框架。对于 Mac OS X,您将使用 Cocoa 和 Apple 的 Xcode/Interface Builder。对于 Linux,您将执行 Linux 人员所做的任何事情。)然后,您只需在每个平台上重新编译您的应用程序,你得到两全其美。

一个不错的折衷方案是使用用于 C++ 的 GUI 工具包,如QtwxWidgets,它们承诺生成跨平台应用程序。是的,应用程序本身是真正的跨平台,但它们并不总是具有真正的原生界面。我知道 Qt 最近变得更好了,但仍然达不到我的标准。您和您的用户可能不那么挑剔。请注意那里的“您的用户”部分。Mac Office 团队发现 Mac OS X 用户只是不接受功能区,因为它是在 Windows 中实现的。Mac Office 11 终于将功能区带到了 Mac 上,但看起来完全不同,已完全重新实现,看起来像一个原生的 Mac OS X 小部件。相比之下,Apple 的 iTunes 在 Windows 上显得很突出。长期以来,Mac 上创新、易于使用的界面的标准被许多 PC 用户视为可憎。但话又说回来,原生 GUI 有点像我的肥皂盒,所以如果你在乎,我建议仔细阅读我对其他类似问题的回答:

于 2011-03-29T04:02:48.797 回答
1

如果您的目标是拥有一个带有易于使用的 GUI 构建器的自包含 IDE,它可以生成独立的跨平台可执行文件,那么据我所知,选项非常有限。

如果您喜欢 BASIC(类似于 RealBasic 或 RunRev),那么您可能需要查看 www.PureBasic.com。恕我直言,文档和新材料很少。它有自己的 GUI 构建器,但为了多花点钱,您可能想将它与PureVision 配对

对于在 C++、wxPython、wxLua 或 wxRuby 中使用 wxWidgets 编程的跨平台开发,您可能需要考虑DialogBlocks

于 2012-03-03T23:28:22.847 回答
-1

这里给出的答案当然很糟糕,但你问的问题很困难,可能没有答案。我问自己同样的问题,因为 REALStudio 没有我想要的那么好。Java 很差,很难,也很丑。.NET 是最受欢迎的,但不是跨平台的。

考虑到外观是一个主要问题。如果 GUI 看起来不是原生的,那么您就没有理由不能设计出更好的东西(例如,看看 MojoWorld)。我会暂时建议 REBOL。虽然它似乎是一个解释器,但可以购买编译器。由于该软件是免费的,如果您的程序运行良好,您可能会购买编译器。不确定它是否具有界面构建器,因为按钮是由代码生成的。免费版的质量较差,但近年来一直在改进。

无法从线程更新界面(例如 Cocoa,我猜 NextStep 现在真的很老了)似乎破坏了整个练习对象。拥有不运行的计时器(REALStudio)似乎也没有希望,因为它们应该更新界面。然后你就有了面向对象,这是可怜的程序员无法理解代码的借口。除非您将代码放入 Timer 中假装它是一个模块,否则无法“转到”按钮(对于 REALStudio 来说是的)。我能理解你的问题。试着意识到编程是困难的,只有当你看到像 Apple 这样的专家产生的最终结果时,它才会看起来很容易。

所以Java证明了跨平台是行不通的。试试 REBOL。

于 2012-05-08T10:53:42.923 回答