跨平台编程语言,有好的GUI工具包吗?

2 投票
11 回答
3405 浏览
提问于 2025-04-15 15:32

我有一个程序的想法,需要把软件写成一个可以在所有主要桌面平台上运行的可执行文件。这意味着我需要使用一种解释型语言或者在Java虚拟机(JVM)上运行的语言。两者我都可以接受,但编程语言必须在强大和简单之间找到平衡,比如Python。

我知道wxPython这个东西,但听说它在Mac OS X上的支持比较有限。

Java听起来不错,外观也很好,但似乎编程起来有点难。

有没有人能帮帮我?

11 个回答

3
  • 你可以使用任何可以在JVM上运行的编程语言,比如Jython(Python的实现)和JRuby(Ruby的实现)。

  • 你可以试试使用Python的Qt绑定,Qt似乎支持很多Mac OSX的特性。

5

用Python配合PyQt,或者将来可能会有的免费版本PySide,看起来是个不错的选择。毕竟,编程语言中,能比Java更简单的并不多(你觉得Java“几乎太难编程了”),而Python就是其中之一。Qt被认为是任何语言中最好的跨平台图形用户界面工具包,而PyQt(现在是GPL或收费)和PySide(最终会免费,即使你想把自己的代码闭源)则是Python和Qt之间强大的接口。

6

我之前用Python和wxPython编程,觉得非常简单好用。现在我用Java,主要是用Swing和SWT这两个工具。

我个人更喜欢Java,但这只是我的个人喜好,所以你不必被这个影响。

从Python转到Java我觉得并不难。在图形界面方面,它们都有布局管理器的概念——虽然管理器的具体实现不同,但差别不大,不会让你觉得难以适应。

Java有一个非常庞大的类库,几乎不需要自己写任何东西,只要把现有的组件组合起来就行。我在Python里没有深入研究过,但可能也差不多。我注意到,我在Python里用的那些很棒的功能(比如s[-4:-1])在Java里也能很容易实现。这两种语言都比C要好,因为在C里我得自己管理字符串。

如果你觉得wxPython在MacOS上有限,那你应该试试Java。我在Windows、Linux和其他UNIX系统上运行Java代码时没有兼容性问题。可惜的是,我没有在Mac上测试过,所以这方面我不能给你建议。

我的建议是,选择一个小项目,分别用Python和Java做一遍,看看在你感兴趣的所有平台上运行得怎么样。

撰写回答