2010-03-15 96 views
3

我需要编写跨平台应用程序(基本上是CRUD)。Java Swing:编写跨平台应用程序(基本上是CRUD)

Java Swing的使用是个好主意吗?或者它过时了,你知道更好的解决方案吗? 我不想使用像5种语言的各种东西,一个或两个应该是足够的。

+0

您使用哪种语言?这对答案影响很大。 – 2010-03-15 21:17:49

+0

java,c#,c/C++,delphi以及python和VB的一点点 – Mike 2010-03-15 21:21:56

回答

8

Java和Swing绝对符合要求,您只需从Oracle/Sun下载的语言运行时就可以完成任何操作。 Java是少数几种语言之一,它包含一个完整而强大的GUI库。

如果我现在要编写这样的程序,那就是我要用的。

+0

很高兴听到这个,Carl – Mike 2010-03-15 21:22:21

1

就我个人而言,我一直更喜欢Standard Widget Toolkit在GUI工具包方面我自己。

一些argumentdiscussion

+0

为什么这么说?任何具体原因? 我非常喜欢l&f在Swing中的自定义 – Mike 2010-03-15 21:23:03

+0

我想我总是在历史上将Swing与典型的可怕的“java外观”关联起来。这对Swing来说可能是不公平的,而且我相信它已经有了很大的改进,但是在SWT背后的重量级IBM以及被Eclipse“证明”,总是让我摆脱它(让它摇摆!)。 – 2010-03-15 21:26:07

+0

我明白了。这似乎非常个人:) 我喜欢nimbus l&f,但与蟒蛇我见过一些很酷的gui工具包 – Mike 2010-03-15 21:27:26

1

Java/Swing肯定会做你想做的。还有其他解决方案,如.NET/Mono,各种跨平台GUI库和C++。

如果我今天不得不决定使用它的是Java/Swing。 Java是因为它支持得更好,Swing是因为它内置了JDBC,并且简单地将平衡与其他平衡相提并论。

加文对SWT的权利+1。如果我不知道Swing,我会在做出最终决定之前考虑SWT。但我知道Swing很好地完成了这项工作。

0

既然已经给出了好的java答案,那么应该可以在c#中完成UI(只要你没有使用任何特定于Windows的东西)。 System.Windows.Forms类型的应用程序可以在Windows,Linux和Mac OS X(带单声道)上运行。它确实需要更多的工作来完成您想要支持的每个平台的包装,但这是可能的。

(如果你已经知道Java的你还是最好不要使用,虽然作为支持跨平台更好,它不需要用户安装单声道或.NET)

2

Swing是完整的,保持,有据可查,并以Java实现,确保跨平台的可移植性。最相关的是,它是Java语言的一部分,所以没有其他下载让用户管理/膨胀你的程序。

虽然默认外观很难看,但Java 7将更新Swing的默认外观,使其看起来非常有光泽。

如果你的问题涉及到使用语言本身,我会说“是”。与Swing一样,Java也有很好的文档记录和高度发展。它可能看起来很冗长,但如果出现问题,您可以确定使用Java进行处理。

+0

你的意思是灵气?或真的鹦鹉螺(不知道那个) – Mike 2010-03-15 21:38:02

+0

Nimubs ...代码失败。在我回答了我的代码库以查明类名是什么后,我回答了很多。 – 2010-03-15 21:43:59

+0

是的我很喜欢它 你怎么知道这将是下一个默认的l&f?传言? 传闻? – Mike 2010-03-15 21:51:23

0

Java/Swing很好。我建议为JFormsDesigner或其他UI布局工具获取许可证,这使得生活变得更加简单。

另外,看看SwingX是谁在Swing工作制定自定义控件,什么不那么看起来不错,是非常有用的人。

这也是寻找最佳实践的好地方。

0

也许你可以通过创建XML请求/响应流和使用Web服务来分离前端和后端。然后,只要使用合适的Web客户端,您就可以使用任何您想要的技术编写前端。

+0

是的,我在想“瘦客户端”(使用网络),但我得到了这个想法:/ 然而,不坏 - definitelly :) – Mike 2010-03-15 22:15:28

+0

当然是跨平台的。您的客户可以是.NET,Java,Python - 任何可以向您的服务发出HTTP请求的东西。 – duffymo 2010-03-15 22:39:16