富客户端编程语言JavaFX展望.docVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
富客户端编程语言JavaFX展望

富客户端编程语言JavaFX展望 JavaFX 2.0代表客户端Java产品族最重要的更新,提供了JavaSE平台整个客户端层的替代品。Osvaldo Pinali Doederlein很早就说过:我们知道JavaSE已经过时。我不知道有多少人没有认识到这点,如果你不知道,请再检查一些Cindy Castillo的JavaFX架构的伟大概述。它不仅仅是一个新的组件库、动画和富媒体。它完全替代AWT[Abstract Window Toolkit,抽象窗口工具集]、Java2D、Swing、Java Sound、Applets、ImageIO、Accessibility——简而言之,JavaSE平台的整个客户端层。(不,一个JavaFX应用不再使用java.applet API。)Oracle摆脱大量AWT和基于AWT的一切事物,主要的原因是新浏览器插件更好。 Sun Microsystems高级工程师、Java Swing GUI工具集的创始成员之一Amy Fowler建议,(要使Java成为可行客户端平台)这样的改变是必要的:用户界面技术是一个与图形碰撞的过程。要使Java在长期战略中成为可行的客户端平台,它必须天生能有你所看到的iPhone/iPad应用那种视觉盛宴。正如我多次指出,使用Swing中Java2D有可能实现一些(例如Kirill非常好的Trident库),但是这需要非常复杂的操作,这不是天作之合。问题症结在于,Swing植根于传统AWT,而不是集成到2D坐标系中。要解决这个问题需要很多不兼容性改变,一旦你朝这条路走下去,那么,你开始问自己还有哪些不兼容性需要改变...很快新的模型被重新构建,你认识到非常需要新基石。 JavaFX 2.0实现了自己的一套图形用户界面库,不同于Java平台上已有的AWT和Swing。从适用性上来说,AWT和Swing比较适合传统的以内容为主的交互性较弱的桌面应用。这点从AWT和Swing中包含的组件就可以看得出来,只是一些常见的内容驱动组件,甚至没有图表的支持,只能依靠JFreeChart这样的第三方库。如果需要创建内容丰富的界面,则需要利用Java 2D和Java 3D API来自行绘制。对多媒体的支持也不够有限。JavaFX 2.0新的图形用户界面库把基本图形元素和用户界面组件两类元素统一在一起。不管是矩形、椭圆、按钮还是表格,都是用户界面上的节点,可以用相似的方式来处理。JavaFX 2.0在JVM之上,实现了新的类似AWT的窗口工具箱Glass Windowing Toolkit,可以直接利用操作系统的原生事件队列。从此再也不需要小心注意AWT和Swing中事件分发线程的使用问题了。 JavaFX 2.0中的图形渲染引擎Prism可以借助底层操作系统上的DirectX和OpenGL提供的硬件加速支持,因此性能优于传统的使用Java 2D进行软件渲染的做法。在用户界面组件方面,除了基本的常用组件之外,还提供了图表绘制的支持。在多媒体支持方面,除了基本的图片之外,JavaFX 2.0的媒体引擎支持MP3、AIFF和WAV等音频格式和FLV视频格式。 在组件的外观方面,JavaFX 2.0也采用了更加流行的做法,即用CSS来定义应用的外观。另外,JavaFX 2.0也引入了界面描述语言FXML。FXML在功能上类似微软的XAML,是一种用户界面描述语言。FXML+CSS+Java这样的组合,颇有些Web应用开发中HTML+CSS+JavaScript组合的味道。值得重点介绍的是JavaFX 2.0中的Web引擎组件。这是一个基于Webkit内核的内嵌浏览器。在JavaFX应用中可以访问内嵌浏览器中网页的DOM结构和执行 JavaScript代码。基于Webkit意味着这个内嵌浏览器支持HTML5的新特性。这个内嵌浏览器可以在很多场景下都得到应用,比如Web应用的自动化测试。另外一种用法是把内嵌浏览器作为Web应用运行时刻的环境,以一种Java+HTML的方式来呈现。 JavaFX 2.0至少把Java平台变成了一个开发富客户端应用(RCP)的良好平台。在以后的开发中,AWT和Swing应该会逐渐淡出桌面应用开发的视野。 JavaFX将成为Java平台上主流的图形用户界面开发库。而在RIA方面,JavaFX的前景仍无法预料。毕竟,依赖插件的RIA开发方式都受到来自 HTML5的巨大冲击,JavaFX自然也不例外。JavaFX能发挥作用的一个地方应该是在企业内部系统中。对于企业内部的系统,部署上的问题比较好解决,同时也有利于复用内部的Java相关的资产。 JavaFX?的设计符合在Java SE 8中会有?的“lambda”语言特性。lambda

文档评论(0)

f8r9t5c + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档