2009-12-04 220 views
0

除了.NET或Java之外,哪种语言可用于为Windows和Linux编写应用程序?用于编写GUI应用程序的编程语言

+3

任何可以调用C API的语言 - 实际上是所有现有的语言。 – 2009-12-04 12:09:29

+1

是的,该字符串有多长;) – KevinDTimm 2009-12-04 12:20:54

+0

另请参阅http://stackoverflow.com/questions/66227/what-is-the-best-multi-platform-rad-language - 类似的答案。 – 2009-12-04 12:43:12

回答

12

你可以扭转你的问题:什么样的工具包在那里,并languauges做他们支持?

对于实例GTK:(从wikipedia

C   GTK+ 
C++   gtkmm 
Ruby  ruby-gtk2 
Python  PyGTK 
Java  java-gnome 
.NET  Gtk# 
PHP   PHP-GTK 
Perl  Gtk2-Perl 

你可以找到许多语言的支持,如果你探讨这些other widget toolkits

Juce — An extensive cross-platform UI toolkit 
FLTK — A light, cross platform, non-native widget toolkit 
FOX toolkit — A fast, open source, cross-platform widget toolkit 
GTK+ — The GIMP toolkit, a widget toolkit used by GNOME applications 
IUP_(software) -- IUP cross platform static/dynamic library C/LUA, Lua (MIT) licence 
JX Application Framework 
Microsoft Foundation Class - The most commonly used widgeting toolkit for Windows. 
Motif 
Object Windows Library & OWLNext 
Qt — A widget toolkit used by KDE 
Standard Widget Toolkit — SWT for Java 
Swing — Java widget toolkit 
Tk — Toolkit part of the Tcl - project and often used by Perl and Python programmers 
Ultimate++ 
Visual Component Library 
wxWidgets — A free widget toolkit 
XForms 
7

Python是使用PyQT和wxPython作为两个广泛使用的桌面GUI应用程序框架的好选择。

+0

听起来像是一个明确的答案。 – Joe 2009-12-04 12:08:26

+0

..因为它有两个明确的(S):D – 2009-12-04 12:09:31

+0

你不能有“一个”明确的选择 - 它应该是“的”,除非你会错。 – 2009-12-04 12:13:02

2

那么你说的Windows和Linux,所以你可以总是回落在C++。许多好的桌面应用程序都是用它来完成的。

0

取决于你如何定义一个GUI应用程序。

你可以使用HTML /闪光灯/的Flex/JavaScript来创建可以运行像一个正常的应用程序Adobe AIR应用程序..

1
+0

这不是真正的建议,它只是为了好玩。 C.O. – 2010-09-11 01:37:48

2

Ruby Shoes。这是我见过的最漂亮的API,它可以在Windows,OS X和Linux上运行。

+1

啊,是的,我也想提到鞋子,但是为什么那个幸运的僵尸,它的创造者,为什么把他的网站拿下来呢? – jamesaharvey 2009-12-04 12:27:07

+1

这就是开源的美丽。 – 2009-12-04 12:33:31

1

这真的取决于很多因素,无论如何,如果你想要一个多平台的应用程序与本地用户界面,我建议你组合wxWidgets和C/C + +(我现在正在使用)。

2

提供访问您所关心的GUI的任何语言。

1

我有点惊讶没有人建议REALbasic,因为它与.NET和Java非常相似(IDE非常像Visual Studio的跨平台克隆,并且最初是作为Java Mac上的开发工具),特别是他们经常在Stack Overflow上运行广告。

语言本身就是'OO VB'。不完全是VB.NET,但非常相似。就我个人而言,我不喜欢这种语言,但作为图形应用程序开发的环境,无论如何,它都很棒。它有一些缺陷,但是在2或3个目标平台上实现相同的用户界面(除非你的应用程序是一个可以编写自己的GUI框架的大型项目),解决这些缺陷还是比较快。我可能会对C/C++编写的外部组件产生沉重的影响,但它具有完整且非常实用的API,包括从高级SOAP客户端到原始TCP套接字以及2D和3D(包括OpenGL表面)API的。你也可以使用Mono - 例如使用C#,但是使用GTK而不是WinForms,使用Mono Develop(我认为这在技术上不是“.NET”,但你可能已经考虑过了)。对于GUI应用程序,只要从头开始构建应用程序,就可以在Windows和Linux上非常成熟。

6
  • 每个可以与本地代码接口的编程语言(或者更准确地说每个编程语言执行引擎)都可以用来实现GUI应用程序。这本身已经包含了过去60年来创建的几乎所有的编程语言,包括但不限于C,C++,Objective-C,Objective-C++,D,Eiffel,Fortran,Pascal,Modula,Oberon,Go,Haskell ,OCaml,Python,Ruby,Perl,PHP,Tcl,C#,VB.NET,Java,Scala,F#,Newspeak,Anomorphic Smalltalk,Eiffel,Lua,Potion,Falcon,Dao,Nimrod,Gen​​ie,Vala,Scheme,CommonLisp, COBOL。
  • 在Java平台上运行的每种编程语言均可用于编写GUI应用程序。这包括我们公开了解的大约400种语言,以及谁知道有多少种不公开的语言。这个列表包括Java,Scala,NetRexx,Python,Ruby,PHP,ECMAScript,Groovy,Fan,Clojure,JavaFX,AspectJ,Fortress,Cobol。在CLI和/或.NET平台上运行的每种编程语言(提示:.NET不是一种编程语言,它是CIL执行引擎,CLI实现,CTS实现,BCL实现和组合的营销术语一个框架)可以用来编写GUI应用程序。这包括我们公开了解的大约200种语言。该列表包括C#,VB.NET,F#,Eiffel.NET,Spec#,Sing#,X#,Polyphonic C#,Cω,Ruby,Python,Perl,Tcl,PHP,C++,SABLE,Scheme,CommonLisp,Clojure,斯卡拉,Cobol,眼镜蛇,Perl。
  • 很多编程语言都将自己的 GUI框架用于编写GUI应用程序,例如Tcl,Newspeak,Dolphin Smalltalk,Squeak Smalltalk,Delphi,Rebol。

而这正是我能想到的那些。

1

厄兰及其与的关系Wx

我没有遇到没有绑定到某个GUI工具箱的语言:如果人们关心语言,他们会建立绑定。

1

需要考虑的一件重要事情是您以前的经验,这不是一个小问题,因为掌握编程语言需要时间。

这么说的,我爱的Smalltalk任何味道,所以你可以选择(在Smalltalk世界):

  • 海豚Smalltalk的(是Windows本机,但前男友下 葡萄酒在Linux)
  • 视觉作品
  • 的Visual Age
  • 的Smalltalk/X
  • 佳乐/菲罗

它们是Smalltalk的主要组成部分,并且不按特定顺序命名。

相关问题