写点什么

Sun CTO 谈 JavaFX Mobile 和 JavaFX Script

  • 2007-05-24
  • 本文字数:1864 字

    阅读完需:约 6 分钟

在本次 JavaOne 大会上,Sun 通过宣布 JavaFX 表示了自己对客户端 Java 的重新重视。JavaFX 是一个构建于 Java 技术之上完整的运行时环境,可以用来交付到桌面、移动设备、手持设备和电视等环境的富互联网应用(RIA)。在这些里的每一个硬件平台上,这个新技术都提供一个脚本语言,以结合 Java 的威力用于快速开发有 Flash 效果和交互式图形用户接口的应用程序。但是这还远不是 JavaFX 所展示的全部,它还代表了 Sun 的一个里程碑式新商业策略和一门新前沿技术。InfoQ 就此采访了 Sun 的首席技术官 Bob Brewin,他解释了这一技术对 Sun、Java 开发者以及使用者等这些 JavaFX 所真正关注的对象的意义。

问到是什么驱动了 Sun 在这个时候向市场推出这个技术,Brewin 没有像常人所想的那样回答说是为了更丰富、更快速开发桌面 Web 内容的需要,而是表示说 JavaFX 是对 Flash 和 AJAX 增长的一种回应,现在移动手机和电视屏幕比桌面浏览器离用户更近,在他的思想里,这些才是 JavaFX 最重要的驱动力。这正好印证了 Sun 在大会上所讲的将注意力放在消费者产品上的观点,这样 Sun 就有可能为 Java 技术占领最大范围的市场。Brewin 指出,现在世界上大部分人在访问互联网内容时的首要选择不是桌面计算机,而是移动手机。

根据目标硬件平台的不同,JavaFX 或者构建在 Java SE 上或者 Java ME 上,但是以 Mobile 的眼光来看,它更像是一个可以制作交互式内容的产品化脚本接口——一个设备上的完整操作系统,包括 Linux 内核和本地服务等。它应该被看作 Windows Mobile、Symbian OS 和其他移动 Linux 平台的竞争对手。在移动手机上运行时,JavaFX Mobile 能实现内嵌在大多数移动手机里的电话服务。所以以这个观点来看,你就能明白这一技术和 Sun 最近从 SavaJe 处所获技术的关系。Linux 内核和 CDC Personal Basis Profile Java runtime 的目标是与高级智能手机一个级别的手持设备,以及电视和其他连接设备,但是 Brewin 说随着运行时的优化和完善,Sun 也会将此应用到 CLDC MIDP 等“功能手机(Feature Phone)”。因为整个 JavaFX 软件系列都将会开源,所以 Sun 期望能通过出售完整的设备平台来增加许可(License)收入,而不仅仅是 Java 运行时环境。很多项目都在进行之中,甚至包括 Solaris 内核这一现在应用在大多数移动设备都有的 ARM 处理器上的简易操作系统。

问到 JavaFX Script 的起源,Brewin 回答说这个用于脚本化交互式 GUI 的语言是由 Sun 工程师 Chris Oliver 所开发,当时他还在 SeeBeyond 技术公司( 2005 年被 Sun 收购)。很多开发者可能都熟悉它从前的名字—— F3 。JavaFX Script 静态类型化并提供编译时错误检查机制,使得它有可能被用于开发可支持代码完成、超链接、重构等功能的强大工具。其他的语言特性包括类型推断(type-inference)、声明语法,以及完全支持 2D 图像、标准 Swing 组件和声明动画的自动数据绑定等。你还可以导入 Java 类,创建新的 Java 对象,调用它们的方法,以及实现 Java 接口等。

相应的制作工具也在开发之中,但是在大会上 Chris 展示了一个由他自己开发的可用于 JavaFX 脚本化的交互式 GUI 构建器。这个工具包含在 JavaFX 面向开发者社区所发布的初始版本里。因为脚本语言和工具在所有的目标平台上都保持一致,所以 JavaFX 看上去能实现 Sun 的“一次编写,处处运行”的承诺,甚至比 Java 自己做的还好。当然,在 JavaFX 脚本里被导入和调用 Java 对象会依赖提供的 Java 运行时。对于为只有有限资源和缺少 Swing 或者 AGUI 类库支持的 CLDC 设备所发布的 JavaFX 版本而言,它的功能某种程度上肯定会减弱。

桌面 JavaFX 现在所要考虑的一个问题是部署。对于从前没有安装过 JRE 的用户来说,JRE 体积太大,而且现在从浏览器上进行按需安装的用户体验也不是特别好。Brewin 在演讲中提出了一个可行的解决方案,在 Java 6 Update 2 里将会为 JRE 引入一种新型的部署模型,初次下载时体积非常小,只有在需要时才下载其他的 JRE 组件。他说这个概念非常类似 Java 7 中提到的 Java Kernel 项目。被问到类似的部署模型会不会用在 Java ME 上时,Brewin 说当然有可能,这会由 Java Community Process 来推进。

让他对 JavaFX 和 Adobe Flash 做个对比时,Brewin 回答说这是一个“苹果和橘子”的比较。Flash 有很好的功能,但它永远不能交付 Java 类库的大部分功能,而 JavaFX 可以。他说更好的比较是在 JavaFX 和 Apollo (Adobe 将要为桌面 RIA 提供的一个运行时)之间。在这个擂台上,他认为 JavaFX 会非常有竞争力。 查看英文原文: Sun CTO Bob Brewin on JavaFX Mobile and JavaFX Script

2007-05-24 21:01738

评论

发布
暂无评论
发现更多内容

伙伴福利,100个项目彻底精通Java!【开源】

JavaPub

Java 源码 javaWeb

【Alibaba微服务技术系列】「SpringCloud技术专题」基于SpringCloud-Alibaba的微服务2.0模式架构搭建实战指南(解析版本对应关系)

洛神灬殇

SpringCloud SpringCloud Alibaba 12 月 PK 榜 服务搭建

在西安怎么选择java培训?

小谷哥

Zebec正在以流支付的方式,推动加密资产支付走上正轨

威廉META

详述TLS握手流程

穿过生命散发芬芳

TLS 12月月更

java开发哪家机构比较好?

小谷哥

大数据开发培训机构该怎么选择?

小谷哥

工作中常用的设计模式--享元模式

lpe234

Java 设计模式 享元模式 spring-boot

深度分析React源码中的合成事件

flyzz177

React

银行普惠金融可持续发展能力建设——风控科技应用

易观分析

金融 银行

架构实战营模块二作业

张贺

架构训练营

Zebec正在以流支付的方式,推动加密资产支付走向主流

石头财经

面试官:说说Event Loop事件循环、微任务、宏任务

loveX001

JavaScript

极客时间运维进阶训练营第八周作业

独钓寒江

前端开发需不需要通过培训来学习

小谷哥

react的useState源码分析

flyzz177

React

使用JMeter模拟设备通过MQTT发送数据

石云升

测试 Jmeter mqtt

react源码分析:深度理解React.Context

flyzz177

React

JavaScript刷LeetCode拿offer-栈相关题目

js2030code

JavaScript LeetCode

前端一面高频面试题(附答案)

loveX001

JavaScript

Verilog 过程赋值

向阳逐梦

Verilog Verilog语法 Verilog过程赋值

容量保障落地四步走

老张

性能测试 服务治理 稳定性保障 容量测试 容量保障

Zebec正在以流支付的方式,推动加密资产支付走上正轨

鳄鱼视界

react源码分析:组件的创建和更新

flyzz177

React

JavaScript刷LeetCode拿offer-树的遍历

js2030code

JavaScript LeetCode

手写一个react,看透react运行机制

flyzz177

React

去哪儿是如何做到大规模故障演练的?

TakinTalks稳定性社区

自动化 混沌工程 故障演练

大数据培训课程哪里比较好?

小谷哥

2022-12-13:游戏玩法分析 I。写一条 SQL 查询语句获取每位玩家 第一次登陆平台的日期。 +-----------+-------------+ | player_id | first_l

福大大架构师每日一题

数据库 福大大

架构实战营 模块2作业

西山薄凉

「架构实战营」

深入React源码揭开渲染更新流程的面纱

flyzz177

React

Sun CTO谈JavaFX Mobile和JavaFX Script_Java_David Beers_InfoQ精选文章