保持GUI开发技能的敏锐性

时间:2010-06-23 18:37:21

标签: java user-interface swing

我已经在Java Swing中开发了一段时间了,我开始觉得基于Swing的桌面应用程序感觉有点陈旧,而且开发很乏味。

我看到新的应用程序看起来非常时尚和现代,如TweetDeckSynthesia(钢琴游戏)。尽管Haase&盖伊的“肮脏的富客户端”,我想在Swing中编写这样的应用程序将是一件非常繁琐的工作。

假设桌面应用程序在未来5年内不会完全消失(或者网络与桌面之间的划分将变得无缝),前端开发人员应该探索哪些UI语言和技术当前?下一件大事是什么?

9 个答案:

答案 0 :(得分:2)

Microsoft's WPF可能是最新,最酷的技术之一。

它可以让你做出更好看的图形用户界面。

您还应该查看一些Microsoft's Expression产品。他们让你把那个额外的光晕放到你的GUI中。

答案 1 :(得分:1)

我不确定桌面UI开发中是否存在“下一件大事”。如果有的话,“下一件大事”是基于多点触控的界面,是流行的平板电脑和智能手机。鉴于此,我认为通过下载支持多点触控的手机或平板电脑的sdk来学习如何创建多点触控UI可能是明智的。

答案 2 :(得分:1)

如果您喜欢Swing,请查看Google GWT 它就像Swing for the Web,差不多。

答案 3 :(得分:0)

总是需要OpenGL / Direct3D开发人员,但这可能比你所说的还要低。

在Windows端WPFWindows Forms可用。

在Mac / iOS上,可可是最佳选择。

在Linux上有一些选项,例如GTKQT

你可能只想咬紧牙关并学习一些HTML5 / JavaScript。我怀疑这种情况很快就会消失。

答案 4 :(得分:0)

我建议调查Flex。开发比Swing和b / c更有趣它的Flash可以在浏览器或桌面上运行。

答案 5 :(得分:0)

Java仍然可以正常工作。您只需使用图像替换标准控件,并使用图像状态更改鼠标悬停和单击的外观。

答案 6 :(得分:0)

我还建议WPF作为另一个UI框架,因为它确实在桌面应用程序中提供了一些非常强大的用户界面(并且WPF中的大多数可以转换为Silverlight for webapps)。

另一方面,我认为从可用性的角度看待用户界面并跟踪目前正在发展的趋势,我们可能会更好地服务于下一种新的用户界面语言或技术。

作为一个例子,我在UI开发中看到的范式转换之一(主要是在网络上)是转向使重要的事情变得更大而重要的事情变得更小 - 包括对话框中的是/否按钮。我仍然热衷于这个想法,因为它面对一致的按钮外观,向用户展示他们的选择。

在我们不断做出决策的今天,世界不再提供选项,而是这种新的UI外观的目标是为快乐的道路提供服务。如果用户决定他们想要做一些不同的事情,他们可以,但UI会让用户付出一点努力并阅读细则。

另一个例子是闪现突出显示一个人最近做出的改变(SO这样做,但我忘了用来描述这种效果的术语)来到网站上。

最后,这是我的最爱之一,从管理/用户视图(也主要是在webapp领域)转变为特别的WYSIWYG编辑器...... Flickr就是这方面的一个典型例子,你在这里可以通过单击当前标题并在线编辑来更改图片上的标题,而无需转到单独的管理视图来编辑这些值。

其他人是否看到过这样有趣且又新颖的趋势?

答案 7 :(得分:0)

你已经在Swing编程了一段时间,你才开始觉得它看起来过时了? :)

Swing看起来像废话,无论人们为此做些什么外观和感觉。它实际上使像我们这样的基于Swing的桌面应用程序的供应商处于劣势,因为WPF的外观看起来很闪亮和漂亮。

如果你想留在Java领域,我鼓励你尝试SWT和JFace。你不需要Eclipse。但它是一个更好看的系统,具有更好的API。

如果你想吸引人,WPF就是你的朋友。你只能使用Windows而且不能使用Java(对我来说都是showstoppers),但你不能忽视该SDK的美学优势,因为它与最新版本的Windows紧密相关。

答案 8 :(得分:0)

我认为你提到的这本书的重点,以及这里的大多数答案,都是大多数语言为你提供了工具,(或者足以让自己挂起来;)抛弃任何操作系统的基本丑陋控制。 on,并绘制您想要的任何用户体验。是的,皮肤或者手动接管UI中控件的可视化表示是很繁琐的,但是如果这对你很重要,那么你就会这样做,并且可能会因此获得奖励。或严厉打破“平台UI标准”。