JavaFX 常见问题

kome2000

贡献于2012-02-02

字数:2720 关键词: JavaFX Java开发 Java

JavaFX 常见问题 1. 问题: JavaFX 正在替代 Swing 成为 Java 的客户端 UI 库吗? (参考1,2,7) 回答:不可以替代。JavaFX 是构建丰富的多场景(例如桌面、浏览器、手机和电视) RIA 的富客户端平台。然而,Swing 是一组可扩展的 GUI 组件,通过此组件,开发人员能为基于桌面的商业应用程序快速开发功能强大的 Java 前端。基于桌面环境而设计的 JavaFX 应用程序可以利用功能强大的 Swing 小部件工具包构建适宜于桌面的 RIA。   2. 问题:Applet可以嵌入在网页中,可以使用Swing,也可以实现Rich Internet Applications (RIA). 看起来JavaFX实现的功能和Applet类似,它们之间有什么区别吗?(参考2) 回答:"Applet"是一种部署模式.Applet可以用任何JVM支持的语言编写, 比如Java, JavaFX Script, Ruby, Groovy等.JavaFX 编写交互式的Applet更容易些,开发RIA应用程序比Java效率更高.   3. 问题:能否比较一下JavaFX 和Flex? (参考3) 回答:(这是一个曾在Sun JavaFX工作,现在Adobe Flex做开发的工程师的比较) 成熟度: Flex问世早, 知名度比JavaFX高 语言: JavaFX借助JavaFX Script开发程序.JavaFX Script也是一种脚本语言,只是底层的很多功能依赖Java平台.而Flex这种脚本语言用MXML做声明,而用ActionScript来编程.JavaFX把声明和编程放在了一起. GUI: JavaFX和Flex都提供GUI部件,图象,动画,数据绑定. 工具:JavaFX目前所发布的工具更多的是针对开发者.而Flex为设计者考虑的更多,因而在设计者/开发者的工作流的工具也多. 运行环境:JavaFX需要Java平台,而Flex, 需要Flash平台.    4. 问题:JavaFX 部署有几种方式 (参考4) 回答:目前可以体验的有四种 浏览器中的Applet 桌面上的Applet Web Start启动的Stand alone应用程序 Java Mobile上的JavaFX应用程序 将来JavaFX TV发布后, 会多出一种针对TV的部署方式.   5. 问题:设计者如何使用JavaFX? (参考4) 回答:我们在Adobe Max的大会上介绍了JavaFX, 很多人对JavaFX很感兴趣, 也很激动, 原因有两个. 习惯使用Photoshop和Illustrator的设计者, 可以继续在JavaFX中使用 JavaFX可以让设计者做他们用Flex或者其他技术无法实现的功能, 比如, 把Applet从浏览器中拖拽到桌面, 比如在3D 立方体中放视频. 比如访问现有的Java代码... 对很多游戏开发者来说, 这点很重要, 因为有很多开源的Java游戏库.    6. 问题:JavaFX 会开源吗? (参考2, 5) 回答:JavaFX有一些代码不属于Sun拥有, 所以没有办法开源. 我们正在致力与解决这部分关联, 为以后开源做准备. 目前 JavaFX compiler, Netbeans JavaFX plugin 和 Eclipse JavaFX plugin 是开源的.   7. 问题:怎么给JavaFX 发bug, 以及跟踪Bug的信息? (参考5) 回答:开发者可以登陆http://javafx-jira.kenai.com/secure/Dashboard.jspa. 来发bug, 并且跟踪Bug的解决情况.   8. 问题:JavaFX Mobiile 与JavaME, MSA的关系?(参考5) 回答:我们打算在JavaFX 支持CLDC和CDC. 理想情况下, 我们希望人们能在MSA的子集中创建JavaFX Mobile应用程序, 但对JSR135来说, JavaFX的运行环境有些苛刻. 在这一点上, 我们没有为OS创建full stack的计划, 未来也许会做. 我们打算在现在的JavaME stack中支持一部分, 这样合作伙伴可以在OS 上部署JavaFX, 比如Windows Mobile.   9. 问题:为什么为JavaFX创建新的图象格式, FXZ, FXD (参考5) 回答:设计者可以在Photoshop 或者 Illustrator中创建图象后,  转换为FXZ格式. 而FXD文件可以为FXZ文件更多功能, 比如保留层, 另外FXZ也可以处理矢量(vector)和光栅(raster). 这样可以让开发者灵活处理转换出的图象格式, 并且创建让人惊叹的视觉效果.   10.  问题:如果我创建了一个JavaFX Applet和Server进行通信, 如果我把这个JavaFX Applet拖拽到桌面, 那么Applet和Server之间的通讯会中断吗? (参考2) 回答: 拖拽到桌面的Applet依然是Applet, 仍旧在Sandbox中运行, 依然缓存在Applet Chche中. 因此, Applet和Server间的通讯仍然工作. 只是, 你可以为拖拽动作增加一些代码, 来完成一些特殊的功能.   11. 问题:JavaFX是在JRE中, 还是需要单独下载? (参考2) 回答:我们没有任何计划要把JavaFX加到JRE中. JavaFX会在需要的时候下载, 然后缓存在本地.   12. 问题:JavaFX最终会采用本地以及跨平台的音频视频播放器. 而目前的跨平台部分是由ON2发行的,是否这部分将来都会用纯Java写? (参考2) 回答: 在目前的JavaFX框架中, 音频视频的解码是由ON2提供的优化后的本地库, 用Java 2D做润色, 并且库作为JavaFX运行环境的一部分发行. 将来如果Java的效率允许,我们会转到用Java写解码器.   13. 问题:音频视频的跨平台是否意味着JavaFX只支持标准的格式,比如MP3, AVI, Flash, 以及需要访问本地库的WMV? (参考2,5) 回答: 跨平台需要本地支持. 例如, 在Windows中, 你可以播放任何Directshow支持的音频视频格式. 在Mac上, 你可以播放任何Quicktime支持的. 但跨平台, 我们是指在所有的平台上支持可以工作在JavaFX的媒体文件。目前JavaFX只支持On2的TrueMotion Codecs. 我们会继续研究其它跨平台的媒体格式, 另外也会参考OMS (开放的媒体编码解码项目 http://blogs.sun.com/openmediacommons/entry/oms_video_a_project_of)   14. 问题:如何将现有的Java企业应用程序移植到JavaFX上?(参考1) 回答:JavaFX适合开发客户端GUI, 你可以把原有的Web界面改为JavaFX开发的RIA, 而Server端的仍采用Java.这样也可以保护你原来的投资.

下载文档,方便阅读与编辑

文档的实际排版效果,会与网站的显示效果略有不同!!

需要 3 金币 [ 分享文档获得金币 ]
1 人已下载

下载文档

相关文档