InfoQ

新闻

桌面Java的缺憾:面向消费者的JRE

作者 Scott Delap 译者 Jason Lai 发布于 2007年5月17日 下午7时0分

社区
Java
主题
富客户端/桌面
标签
Java SE,
Java One,
JavaFX脚本

由于JavaFX脚本的 宣布,今年JavaOne大会关于桌面应用的话题变得大红大紫。目前JavaFX脚本使用的是Swing和Java2D,因此在部署时需要安装完整的 JRE。JavaOne大会上的主题演讲所遗漏的部分,是对改进使用JavaFX脚本或者更为传统的Swing编写出的桌面Java应用部署路线的讨论。

由于缺乏部署解决方案,有许多人开始质疑起JavaFX脚本来了:

……问题变成了:这是不是过于微不足道,太过姗姗来迟了?……即便今天我们可以使用Swing来创建更为美观的UI,JRE插件的噩梦仍然阴魂不散。对此我敢担保我说的是真的,因为我刚刚完成了一个花了四个月才通过QA的Applet项目,这个项目的所有问题都和在不同平台不同浏览器中安装JRE有关。

在今年的后半期,我们将可能最终看见希望的曙光——面向消费者的JRE。Ethan Nicholas在去年加入了Sun公司,一直在从事下载数据量较小的“Java内核”的开发工作。Sun的CTO Robert Brewin在最近的JavaOne周中接受了一次采访,从本质上证实了这项工作:

……如果你考虑一下我们正试图对JavaFX移动版做些什么,会发现我们已经修复了下载数据量、安装后的大小和冷启动时间等方面的相关问题。所有这些问题 都和有一个很大的软件,在里面堆砌一些你并不一定需要的东西有关。目前我们的计划是开始将这些特性的一部分安排进Java 6 Update 2中,而更多的则放入Update 3以及后续版本中。

Ethan和Dennis Gu在JavaOne大会上共同做了一个演讲,详细介绍了他们早期的发现。

有传言说这些努力的目标是减小到2-4MB,如果消息可靠的话,那么Java就能跻身Apollo(力争控制在5-9MB之内)和Microsoft Silverlight(不到4MB)的舞台了。不过,下载数据量大小只是这场竞赛的一小部分而已。对Java的改变是否也能包括更为良好的基于浏览器的安装体验,以及能否将Java限制在一台机器只能有一个最新版本,这些都有待观望。

查看英文原文:The Missing Piece of Desktop Java ... The Consumer JRE

深度内容

模块化Java:声明式模块化

本文是模块化Java系列文章的第4篇,介绍的是声明式模块化。文中描述了组件如何以声明的方式来定义并组织在一起,而无需让代码依赖于OSGI API。

Ian Robinson和Jim Webber谈论基于Web的整合

本采访是在伦敦举行的QCon2009上记录的,Ian Robinson和Jim Webber探讨了如何将Web作为整合平台以及REST在理论上和实践中的好处。

项目管理修炼之道(精选版)

项目管理对于项目成败至关重要,但实践中每个项目都有自己的独特性,没有现成的解决方案可以套用。书中从应对实际风险的角度出发,讲述了从项目启动、项目规划到项目结束的整个管理流程,展示了作者的思考过程。本迷你书从原书中精选出5个章节。

那是鸟,还是飞机?不,那是超人!

在这个演讲中,Fred将会揭示敏捷的一些外在因素,并会重点关注敏捷获得成功的内在原因。从案例研究和真实的项目经验来看,Fred认为:工具、管理体系都不能让你变得敏捷。敏捷的成功,植根于士气高涨、充分授权的工作者身上,他们能够以不同以往的方式思考问题。

访谈和书摘:Eben Hewitt的新书《Java SOA Cookbook》

Java SOA Cookbook

Eben Hewitt的新书《Java SOA Cookbook》从Java实现的角度讨论了面向服务架构。Eben在书中讨论了SOA基础、工具、最佳实践和SOA治理等主题。

Mark Richard的《Java消息服务》第二版

Mark Richards的新书《Java消息服务》第二版覆盖了JMS的许多主题, 包括发布和订阅模式以及点对点模式,消息过滤和事务等。InfoQ与Mark谈论了跟他的新作。

模块化Java:动态模块化

本文是“模块化Java”系列文章的第三篇,讨论动态模块化,内容涉及如何解析bundle类、bundle如何变化、以及bundle之间如何通信。

让测试也敏捷起来

对于测试组织来说,敏捷方法带来的快速迭代却让测试本身变得困难起来:缺乏“足够详细的文档”,缺乏“仔细设计用例的时间”等等。在本演讲中,段念将与大家探讨如何在敏捷过程中进行测试。