知乎回答 · 2013

为什么 Java Swing 默认这么丑?

12 条评论 ↗75 个赞同 · 73 个收藏查看知乎原文 ↗

因为SUN公司的目标客户群是企业客户,Java开发者也多是为企业开发定制软件的,用户体验在市场竞争中不太重要,没有动力去改善UI设计。比如你是做ERP或金融系统的公司,系统的可用和可靠,比好看的界面重要多了。况且客户用了你的系统后,在很长时间不会换另一家,提高用户体验不带来更高利润。

如果像苹果、微软和互联网公司一样面向大众开发产品,用户体验就很重要了。用户可选的产品很多,不爽就可以用脚投票,随时换另一家,用户体验能带来更多的用户。这是激烈的市场竞争逼得,必须不断在UI上进行改善和创新,把顾客给“惯坏”了。但是好处是苹果和微软为开发者提供了用户体验很高的GUI组件,Swing相比之下就是渣啊。

在中国最重视用户体验、设立用户体验部门的公司,都是面向大众用户提供服务和产品的公司,例如BAT等互联网公司。你去看看做国内项目的公司和对日外包的公司,设计没有一个做得好的。最典型的例子是12306订票网站,虽然大众用户使用这个网站,但是国有企业的垄断性让用户没有可选余地,而开发商也是一个做国内项目的公司,不是互联网公司,所以用户体验设计的水准很差,以至于被人调侃是大学生作品。同样的现象广泛出现在政府网站、行业应用产品上。

一句话,你的客户决定你企业的运作方式。

要想开发用户体验好的产品,劝你不要用Java做界面前端,这方面Java是20年如一日、令人发指的差劲。

如果就是想用Swing做界面,有没有开源、免费的资源推荐?

那就试一下

WebLaF

吧:

为什么 Java Swing 默认这么丑?配图

为什么 Java Swing 默认这么丑?配图

为什么 Java Swing 默认这么丑?配图

为什么 Java Swing 默认这么丑?配图

为什么 Java Swing 默认这么丑?配图

知乎原文