-1

很久很久以前是Delphi,任何开发者都可以快速构建win32 GUI应用程序。Delphi 是一个国王(国王长寿......)但现在 delphi 和 win32 已经消失了。

所以问题是 - 目前快速构建跨平台 GUI 应用程序的首选平台是什么?我对 Java 和 C# 有很好的了解,我正在寻找比较

  • Java (Groovy) + SWT
  • Java (Groovy) + Native GTK (跨平台?)
  • Java (Groovy) + QtJambi
  • .NET/单声道 + Gtk#
  • .NET/Mono + WinForms 2.0(Linux 上的外观和感觉非常糟糕)

欢迎任何实际使用。

4

7 回答 7

4

您不仅限于 C#/Mono 或 Java……还有 Python/GTK:

http://www.pygtk.org/

于 2009-10-13T18:01:26.207 回答
4

Delphi 非常活跃http://www.embarcadero.com/products/delphi,如果你喜欢还有我个人最喜欢的 C++ Builder(如果我进入 C++)。但是如果你想尝试新的 RAD 技术,我会选择 wxPython 和 SQLAlchemy。

于 2009-10-13T18:06:07.523 回答
4

一年前我自己也在问这个问题。最后我选择了 Mono/GTK#,我很满意。Monodevelop 感觉就像 Delphi,遵循“快速应用程序开发”的理念。

Mono 在主要平台上运行,GTK 在它们上或多或少感觉是原生的(与 Java GUI 相比,它们看起来很古老)。

C# 也是快速发展的主要参与者。

另一个选择是 C++/QT。谷歌和更多大公司在他们的产品上使用它。

于 2009-10-13T18:08:21.013 回答
4

正如其他人所说,德尔福仍然活着并且在踢。但是标准的 Delphi 仍然只是 Win32,并不是真正的跨平台解决方案,尽管许多人成功地将 WINE 与 Delphi 应用程序一起使用。不过,Embarcadero 确实有他们相对较新的基于 .NET 的 ObjectPascal 变体(“Delphi Prism”)。Delphi Prism/.net/mono 对于跨平台来说可能比 c#/.net/mono 稍微好一点,但它也更贵,而且不是来自微软。

想要做跨平台的前 Delphi 用户可以在其 Lazarus IDE 中使用大多数与 Delphi 兼容的 FreePascal 开源 ObjectPascal 编译器,该编译器已经变得相当可靠并复制了 Delph 的大部分 IDE 和 VCL。它将桌面应用程序编译到 Windows、Linux、OSX 和其他 32 位和 64 位平台。

对我来说,如果您过去喜欢 Delphi,至少值得一看: http ://www.freepascal.org http://www.lazarus.freepascal.org

于 2009-10-13T18:25:19.300 回答
1

德尔福几乎是活生生的(硬)。

想要快速的 GUI 开发?那么没有人能打败德尔福。VCL 库有超过 500 个可视化组件!
它提供了构建跨平台 GUI 应用程序所需的一切(目标平台:Windows 32/64、Linux、Android、OSX、iOS

所有这一切都没有那些讨厌的:

   {IFDEF Linux} code      
    {IFDEF Windows} some_other_code  
      {IFDEF Mac} some_other_other_code  

Delphi 也有Super-Duper 字符串

于 2020-02-11T12:29:31.777 回答
0

有三个基于 Python 的项目与 Delphi 所处的空间相同。

Pythoncard、Dabo 和 Glom

此外,考虑构建在本地运行的 Web 应用程序并使用单 URL 浏览器(例如 Mozilla Prism 或 xulrunner)来访问它。

于 2009-10-13T19:21:15.657 回答
0

您可以在 .NET Core 上使用 GtkSharp,也可以在 .NET Core 上使用Avalonia。Avalonia 受到 Windows Presentation Foundation (WPF) 的启发并使用 XAML。

就个人而言,我更喜欢 .NET Core 而不是 Java。

还有用于在 XML 中设计 GTK 用户界面的Glade用户界面编辑器。

Qt 是一个跨平台的小部件工具包,绑定了多种语言,包括 Java 和 C#。

于 2020-02-11T14:35:56.057 回答