FCon7折倒计时最后一周:日程已上线70%!查看详情>>> 了解详情
写点什么

JavaFX:当前的状态和不久的将来

  • 2008-01-19
  • 本文字数:2007 字

    阅读完需:约 7 分钟

在去年十月份,InfoQ.com 发布了一篇名为“JavaFX 概览”的文章。Sun Microsystem 的 Chet Haase 接着又向 InfoQ.com 分享了一些 JavaFX 为 Java 平台带来的其他方面影响的细节。

Haase 通过一些可能在将来构建 RIA 应用时有用的范例,向 InfoQ.com 的读者简要介绍了 JavaFX:

JavaFX 脚本是一门基于 Java 平台的新语言。它提供一些新的能力以及新的语法来使得实现某些功能更加容易,比如构建图形和 GUI 应用程序。很 明显,现在是可以使用 Java 的 Swing 和 Java 2D 库来编写丰富、动态的 GUI 应用程序,但并不是那么容易做到。JavaFX 脚本让这样的应用程序更加容易地实现。对于 Java 开发者,这意味着让他们 的工作更加简单,仍然可以借助于他们已经具备的 Java 平台开发的知识和技能。而对于其他那些不使用 Java 平台的开发者而言,意味着他们现在可以充分利 用平台的丰富特性和强大之处,并且使用一门他们更容易学习和使用的语言。

关于 OpenJFX 项目的当前状态:

OpenJFX 是一个站点,在它上面,JavaFX 的不同部分正在以开放的形式进行开发。比如说,用于 JavaFX 脚本的编译器正在 OpenJFX 站点上进行开发,因此有兴趣试试早期版本的开发者可以获得最新的拷贝,甚至能为开发小组提出自己的建议和反馈。OpenJFX 上还寄宿或关联着其他一些正在进行或即将成立的项目。比如 Scene Graph 项目 ,一个使能 JavaFX 脚本的图形、GUI 和动画功能的运行时库。

最后,OpenJFX 也是项目当前文档的来源;指南、参考资料和一些指向 blog 及其他资源的链接都可以在 OpenJFX 站点上找到。

Haase 这样描述 JavaFX 的组件模型:> 我把 JavaFX 脚本组件模型看作是 Swing+±-,如果这条语句能编译通过的话:)。也就是说,JavaFX 脚本的许多组件,比如 button,直接依赖底层的 Swing 平台的功能。因此,JavaFX 脚本的 button 其实就是个 Swing 的 JButton。但有一些不同之处非常重要。比如:

  • 如果没有必要传播某个 Swing 组件中恰巧是 public 的方法和域时,这个对象的 JavaFX 版本就可以选择不再拥有那些域,从而更易于理解和编程。
  • JavaFX 脚本组件层功能建立于底层的组件之上,从而能够为 FX 运行时提供可以利用的底层组件的功能。比如,JavaFX 脚本语言的 一个新的很酷的功能就是能够触发任意对象的域值的变化。这就确保像 button 这样任意底层组件的 FX 包装类都能把变化正确地传播到 JavaFX 脚本层。
  • JavaFX 脚本也提供了一些 Swing 中并不包含的组件和其他 GUI 对象。比如,当前的 JavaFX 脚本版本提供了 VBox 和 HBox 容器对象,用以在它们的子对象上施以简单的垂直(VBox)或水平(HBox)布局约束。

Hasse 还被问及对于 JSF 的普遍批评(无论公平与否)中的一个——它提供了一个构建 UI 组件的框架,但没有直接提供所有用于简单构建高质量 UI 的组件。他被问到 JavaFX 是怎样以不同的方式解决这个问题的:

我无法解决关于 JSF 的问题(就我个人而言不是很了解 JSF),但 JavaFX 会很乐意能够利用 Java 平台组件模型的强大力 量。Swing 的优势之一是它丰富的 GUI 组件,以及添加自定义组件的灵活性。既然 JavaFX 脚本层是在 Swing 之上,这项优势自然就被继承了下来。

Haase 谈到部署 JavaFX 应用程序:> JavaFX 脚本应用程序使用和 Java 应用程序相同的部署方式:作为独立运行的应用程序,或者运行在浏览器中的 applet,或者是 Java Web Start 应用程序(这样可以通过网络来部署,但本质上是在一个安全的沙箱环境中独立运行在桌面上)。

Haase 还被问到关于开发一个类似于 Silverlight 或 Flash 播放器的浏览器插件的计划问题:> 我们已经拥有一个 Java 的浏览器插件,也就是我们所说的“Java 插件”。JavaFX 脚本应用程序可以像 Java 程序那样使 用这个插件。但是,我们现在正在通过一些非常重要的方式来修改对这个插件的支持,尤其在向着支持更多面向消费者的 JavaFX 应用程序的方向去努力。比 如,对于 Java 和 JavaFX 应用程序的启动时间方面的改善,将会使启动时间比现在有显著的提高。而且,我们也正在重写插件代码,以使其更加健壮和灵 活。这两个改进会出现在“Java SE 6,Update 10”的发布版中,你可以在下面这个站点获得早期的版本: https://jdk6.dev.java.net/6uNea.html

对于 JavaFX 和 Adobe Flex/AIR,Silverlight 及其他富因特网平台在特性、部署和成熟度方面的比较:

我觉得我现在宁愿不要直接对它们作出比较,因为我们现在还处于 JavaFX 的开发中期,所以任何相对于已经发布的产品的比较都是不成熟的。我能说的是 JavaFX 在 RIA 领域真正的优势之一在于它的强大功能和它所基于的底层 Java 平台的高成熟度。

在最后:> 我们对来自于社区的帮助很感兴趣。欢迎登录 OpenJFX 站点,获取最新的版本,体验它的功能,编写一些 JavaFX 脚本应用程序,并把反馈发送给我们!

衷心希望 OpenJFX 项目能够达到它所有的目标,并给构建 RIA 应用的 Java 开发者一个强有力的选择。查看英文原文: JavaFX: Current Status and What’s Upcoming

2008-01-19 20:381892
用户头像

发布了 127 篇内容, 共 40.9 次阅读, 收获喜欢 4 次。

关注

评论

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

android双击事件响应,动脑学院vip视频破解

android 程序员 移动开发

Android外包是如何转正网易的,Android高级工程师面试实战

android 程序员 移动开发

web技术分享| React版本 anyRTC示例对等连接

anyRTC开发者

大前端 音视频 WebRTC React 实时通信

Android事件体系全面总结+实践分析,爆火的Android面试题

android 程序员 移动开发

Android初级开发是如何一步步成为高级开发,含答案解析

android 程序员 移动开发

Android工程师最容易遇到4个瓶颈是什么,安卓开发入门教程

android 程序员 移动开发

Android已死,享学课堂

android 程序员 移动开发

Android岗面试12家大厂成功跳槽,这操作真香

android 程序员 移动开发

Android免打包多渠道统计如何实现,面试突击版

android 程序员 移动开发

Android培训那里好,享学课堂Android架构师vip

android 程序员 移动开发

Android多态实现原理,android开发艺术探索pdf百度网盘

android 程序员 移动开发

Android学习路线!扔物线朱凯android视频

android 程序员 移动开发

Android外包是如何转正华为的,音视频开发面试

android 程序员 移动开发

Android实习面试经验汇总,温故而知新

android 程序员 移动开发

Android开发两年:动脑学院2019android

android 程序员 移动开发

Android学习笔记在互联网上火了,系列教学

android 程序员 移动开发

Android工作经验6年,动脑学院vip课程分享

android 程序员 移动开发

Android工程师跳槽经验分享,资深大牛带你了解源码

android 程序员 移动开发

BAT面试Java岗经验汇总:面试重点+精选面试120题+6条面试经验!

Java 程序员 面试

云管平台的作用以及应用行业简单介绍

行云管家

云计算 云服务 云平台 混合云 云管平台

Android基础入门教程,享学课堂Android架构师vip

android 程序员 移动开发

Android大厂高级面试题灵魂100问,Android经典面试

android 程序员 移动开发

Android客户端Web页面通用性能优化实践,面试心得体会

android 程序员 移动开发

Android岗,享学课堂架构师vip

android 程序员 移动开发

Python代码阅读(第45篇):柯里化

Felix

Python 编程 Code Programing 阅读代码

Android原生开发如何深入进阶,解析底层原理

android 程序员 移动开发

Android大厂技术面试题汇总,享学课堂Android架构师

android 程序员 移动开发

Android大厂面试真题解析大全,10年Android开发经验

android 程序员 移动开发

云计算服务包括哪三种服务?怎么定义?

行云管家

云计算 网络安全 云资源 云管理

Android大厂面试真题解析大全,flutter框架

android 程序员 移动开发

Android体系化进阶学习图谱,扔物线五期

android 程序员 移动开发

  • 扫码添加小助手
    领取最新资料包
JavaFX:当前的状态和不久的将来_Java_Jon Rose_InfoQ精选文章