阅读更多

42顶
7踩

编程语言

转载新闻 客户端Java的革命性飞跃

2009-02-11 13:59 by 见习记者 radovi 评论(22) 有13457人浏览
对客户端Java技术来说,2008年是喜忧参半的一年,而且在今年可能重新复制这一轨迹。在过去一年中,桌面应用开发者看到了众多创新性新版软件的发布,同时也面临着Swing技术的逐渐淡出,以及对Sun公司能否在全球经济倒退的情况下继续坚持创新的疑问。Java专家Jeff Friesen邀请了Java社区中几个颇具影响力的专家,讨论了在客户端Java开发中那些最引人注目的技术,在回顾2008年重要产品和重要事件的基础上,展望了2009年我们将有望看到的一些趋势。

  根据Java.net上的一个调查显示,对Java开发者来说,2008年两个最大的新闻事件就是Java SE 6u10和JavaFX 1.0的发布。不过,在过去一年中客户端Java的重大事件远远不止这一些。

  回顾2008

  2008年在客户端Java领域最耀眼的明星非Sun公司莫属,在这一年中它发布了Java SE 6u10和6u11、JavaFX预览版、JavaFX SDK 1.0、轻量级用户界面工具包(LWUIT)和NetBeans 6.1和6.5。另外,Sun还举办了首届JVM语言峰会和年度JavaOne大会。

  尽管Sun的光芒如此耀眼,也未能完全掩盖 Java社区中一些其它事件的亮点。例如,今年业界发生了一个争论,即Sun是否应该将重点放到开发JavaFX而放弃Swing开发;另外,第一个非现任SUN人员成为OpenJDK成员;JFXtras和WidgetFX项目初次登场亮相;甚至微软也在客户端Java领域中凑热闹,宣布支持 Eclipse开源项目。

  JavaOne 2008:几个值得关注的会议

  除了宣布即将推出JavaFX SDK和来自On2 Technologies的一个跨平台视频解码器以外,JavaOne 2008上没有什么令人眼前一亮的客户端Java产品。不过,对于关注该领域技术的朋友来说,倒是有几个会议讲座的内容值得关注。

  其中值得关注的一个是JWebPane演示会,它是一个针对Java的新HTML组件。

  JWebPane比Swing的JEditorPane更强大,后者只能支持HTML 3.2。该组件基于开源引擎WebKit,支持HTML 4、CSS、JavaScript和DOM,而且是一个完全轻量级的组件,能很好的与Swing组件集成使用。它可以完成众多Java任务,诸如计算组件边界、网络和事件分发等,它的主类JWebPane继承自javax.swing.JComponent。JWebPane项目的技术领导人Alexey Ushakov在去年12月表示,JWebPane的代码将在几个月后将完成,在推出之前将首先推出其API。不过综合各方面因素来看,该组件出现在 JDK 7中的可能性不大。

  另一个值得关注的讲座是Mikael Grev的MiGLayout布局管理器。Grev与Jeff Friesen谈论了MiGLayout项目的计划:

  Q:您能简单的描述一下这个布局管理器,并介绍一下它的吸引人之处吗?

  Mikael Grev:MiGLayout使用一个强大但直观的域特定语言(DSL)来定位屏幕上的组件。我认为,MiGLayout之所以将能够流行起来,原因是它能够为用户实现百分之百的优化。它具有许多内置的逻辑和平台规则,因此用户只需要简单的指出组件之间的联系,剩余工作就可以由它来自动完成。JDK中的 Swing布局管理器则使用了相反的方式;它们在架构上非常简单,由用户来决定间距、位置等信息。MiGLayout封装了几乎全部Swing布局管理器的功能。除此之外,它还具有一些不错的功能,诸如分辨率独立、可视调试模式和自动化间距和按钮排序等。

  Q:据我所知,你正在试图让MiGLayout成为JDK 7核心的一部分。其可能性有多大?

  Mikael Grev:我不清楚这个可能性有多大。我认为这不是一个单纯的技术问题;官方可能不愿意包含一个并非它们自己编写的相对较复杂的软件。

  Q:是否有计划推出一个JavaFX版的MiGLayout?

  Mikael Grev:从一开始开发MiGLayout,我们就特别重视它的可移植性,目前它主要是针对Swing和SWT。它只通过三个代理接口来设计GUI框架类,移植到一个新的GUI框架只需要完成对这些接口的实现即可。因此移植到JavaFX将非常简单,据我所知目前在JavaFX方面没有一个真正的布局管理器,开发者的需求相对较大,因此会有一个JavaFX版的MiGLayout。来自JavaFX团队的Amy Fowler、Dean Iverson和我正在考虑如何最好的来实现它。

  JavaOne 2008的最后一个重要讲座是Effective Java Reloaded,由前Sun员工Joshua Bloch主讲,向与会者介绍了如何编写高质量的Java客户端(及服务器端)代码。

  Java SE 6u10和6u11

  Java客户端平台数年以来一直饱受限制,这是一个众所周知的事实,使得很多开发者不得不转向其竞争对手Flash和Silverlight。举例来说,在一个applet或Java Web Start应用开始运行之前,必须加载整个Java运行时环境JRE。JRE的大小一直非常大,其中JRE 6则更是超过了14MB,因此需要较长的下载时间。为了解决这些限制,Sun推出了Java SE 6u10,其测试版在2008年4月份推出,并在10月份发布了最终版。

  在Java SE 6u10中的以下技术可以帮助克服JRE的不足:

  ·Java部署工具:简化了部署applets和应用程序到不同客户端的复杂性。它包含一个JavaScript文件和一个浏览器插件,可以自动安装一个JRE。

  ·Java内核:通过只下载运行applets/应用程序所必须的JRE部分,让新用户可以更快速的运行applet和应用程序。然后再在后台下载JRE的剩余部分。

  ·Java Quick Starter:预先将部分JRE放到缓存中,大大降低平均Java平台冷启动时间。

  ·新Java插件:通过在浏览器之外的操作系统进程中运行applets,改进了可靠性。如果一个applet运行时出现故障,不会影响浏览器。其它改进包括,每一个applet可以增加自己的堆栈大小,而且加强了Java与JavaScript之间的通信。

  Java SE 6u10还修复了一些漏洞,另外还使Nimbus变成默认的界面外观,其它改进之处在此不一一列举。

  去年12月份,Sun还发布了Java SE 6u11。该版本侧重于安全性增强和漏洞修复。配合6u10的patch-in-place(修补到位)机制启用了一个新的下载引擎,以降低未来升级所需下载文件的大小。为了避免影响用户的宽带使用,该引擎可以监视和释放自身带宽资源。

  JavaFX SDK预览版和SDK 1.0

  2008年的JavaFX可以说是让人欢喜让人忧,具有三大看点事件。首先,Hans Muller和Chet Haase让开发者看到了支持JavaFX的基于Java的场景图和动画框架,其中Muller推出了SceneGraph项目,而Haase也在其博客中对此项目进行了介绍。

  第二个值得关注的是在7月31日发布的JavaFX SDK预览版。它为NetBeans 6.1提供了一个JavaFX插件,让用户可以从IDE中编译脚本。这个预览版的SDK还提供了Project Nile工具集,它的Adobe Illustrator和Photoshop插件可以让内容设计者轻松导出自己的设计给JavaFX开发者。

  第三件事情是,12月4日JavaFX SDK 1.0正式版发布。它包含了一个支持NetBeans 6.5的升级版插件,另外我们还看到了JavaFX Production Suite,Project Nile的升级替代产品。

  许多开发者正在使用JavaFX SDK 1.0开发优秀应用程序。JavaFX先驱者Jim Weaver讨论了该SDK的发展情况:

  Q:你最喜欢JavaFX的什么功能?

  Jim Weaver:其中之一是它以节点为中心的图形界面,任何用户界面元素(包括按钮、图片、布局等等)都是一个二维节点,该功能非常有益于创建iPhone 或Web 2.0的富互联网体验应用。另一个备受人们喜爱的功能是它的示例功能,另外它还使用众多已经存在的Java类。JavaFX是一个富客户端Java技术。

  Q:在未来版本的JavaFX Script中,你预计会引入什么语言功能或API吗?

  Jim Weaver:JavaFX目前只是1.0版,肯定会有一些新的功能会加入,或者会有一些对现有功能的完善,举例来说,在1.0版JavaFX中的某些包中还缺少一些类:

  ·在未来的版本中,需要为javafx.scene.layout包增加更多的布局类。JavaFX具有一个以节点为中心的图形化用户界面,因此未来的布局策略和布局类需要进行相应的设计。

  ·javafx.scene.control包具有支持CSS和动态换肤功能的类,但是在该包中只有一个用户界面控制。对于其它用户界面控制来说,JavaFX需要借助于Swing。

  Sun公司的JavaFX团队正在开发的其它功能还有很多,诸如单元测试机制、一个更易用的异步线程模式、图表类等等。

来自: LUPA
42
7
评论 共 22 条 请登录后发表评论
2 楼 whaosoft 2009-02-12 07:49
呃 说的很火 不过有谁用过??????????
1 楼 miniJJ 2009-02-11 16:22
javafx,我很不看好你

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • Java垃圾回收

    JVM中的并行,指多个垃圾回收相关线程在操作系统之上并发运行,这里的并行强调的是只有垃圾回收线程工作,Java应用程序都暂停执行,因此ParNew工作的时候一定发生了STW。本书提到的***ParTask(例如G1ParTask)指的...

  • Java 垃圾回收

    Java 垃圾回收概述对象已死?引用计数算法可达性分析算法再谈引用生存还是死亡?回收方法区垃圾收集算法分代收集理论1.弱分代假说(Weak Generational Hypothesis)2.强分代假说(Strong Generational Hypothesis)3...

  • Java 进阶 08 —— JVM 垃圾回收器

    垃圾回收器的发展过程 Shenandoah GC 令人震惊、革命性的 ZGC 面向大堆的 AliGC 垃圾回收器概述 垃圾收集器没有在规范中进行过多的规定,可以由不同的厂商,不同版本的 JVM 来实现。 由于 JDK 的版本处于高速迭代...

  • 基于java固定资产管理系统设计(含源文件)

    因此,必须以有力支撑高等教育发展改革的高度出发,对固定资产管理工作进行系统的规划和建设,运用现代信息技术真正实现管理水平上的飞跃。本系统就是基于此种社会背景进行独立开发,解决了以往资产管理中存在的...

  • 基于java的健身房管理系统的设计与实现

    就已研究开发的健身俱乐部管理软件来看,比较突出的有飞跃健身俱乐部管理软件、贝尔健身俱乐部管理软件、飞扬健身俱乐部管理软件等,这些软件的功能较为全面,涉及了客户、经营者、员工等多方面的综合管理,会员管理...

  • 3 java JVM

    JVM 线程私有区 程序计数器,虚拟机栈,本地方法栈 这些是一个线程拥有一个 线程共享区 方法区,堆 这些是一个进程拥有一个 内存中的堆与栈 ...2、共享性不同 栈内存是线程私有的。 堆内存是所有线程共有的 4

  • 基于Java的微小企业人事管理系统的设计与实现 毕业设计-附源码231012

    本设计主要实现集人性化、高...微小企业人事管理系统使用Java语言,采用基于 MVC模式的SSM技术进行开发,使用 MyEclipse 2017 CI 10 编译器编写,数据方面主要采用的是微软的MySQL关系型数据库来作为数据存储媒介,配

  • ssm基于Java的微小企业人事管理系统的设计与实现毕业设计源码231012

    人事管理系统的革命性变革出现在20世纪90年代末。由于市场竞争的需要,如何吸引和留住人才,激发员工的创造性、工作责任感和工作热情已成为关系企业兴衰的重要因素,人才已经成为企业最重要的资产之一。 开发现状 ...

  • JAVA虚拟机发展

    一、java发展史 1995年5月23日,Oak语言改名为Java,并且在SunWorld大会上正式发布Java 1.0版本。Java语言第 一次提出了“Write Once,Run Anywhere”的口号。 1996年1月23日,JDK 1.0发布,Java语言有了第一个...

  • Java垃圾收集器详解

    所以,串行回收默认被应用在客户端的Client模式下的JVM中; 在并发能力比较强的CPU上,并行回收器产生的停顿时间要短于串行回收器; 和串行回收相反,并行收集可以运用多个CPU同时执行垃圾回收,因此提升 了应用的...

  • 字节跳动重磅发布 2022 年 6 大前端技术发展趋势

    它的出现是数据传输速度、响应速度和连接性的一次巨大飞跃。 5G 将与超高清视频、VR、AR、消费级云计算、智能家居、智慧城市、车联网、物联网、智能制造等产生深度融合,这些都将为前端技术的发展带来新的增长和机遇...

  • Java 是否真的即将被取代?

    对于最近有关 Java™ 即将退出历史舞台的传言,您可能想知道在这个时候放弃使用 Java 平台并转而使用更新的技术是否时机成熟?在作出您的判断之前,请先回顾并查看一下 Java 生态系统以及它的竞争者,看看这些传闻...

  • Java是否真的即将被取代?

    对于最近有关 Java 即将退出历史舞台的传言,您可能想知道在这个时候放弃使用 Java 平台并转而使用更新的技术是否时机成熟?在作出您的判断之前,请先回顾并查看一下 Java 生态系统以及它的竞争者,看看这些传闻是否...

  • Java 是否真的即将被取代? --COBOL 式死亡

    对于最近有关 Java™ 即将退出历史舞台的传言,您可能想知道在这个时候放弃使用 Java 平台并转而使用更新的技术是否时机成熟?在作出您的判断之前,请先回顾并查看一下 Java 生态系统以及它的竞争者,看看这些...

  • Java/Flex/.Net 三国演绎 之 关公战秦琼

    后台是Java,前台是 Flex or .Net 同时工作    功能强大而稳定,有着跨平台、集群化优势的Java,就像勤劳勇敢的“牛郎”;极具用户亲和力与体验感、天生与Office系列有着良好关系的.Net,就像美貌的“织女”,...

  • JVM上篇_17_垃圾回收器_尚硅谷

    由于JDK的版本处于高速迭代过程中,因此Java发展至今已经衍生了众多的GC版本。从不同角度分析垃圾收集器,可以将GC分为不同的类型。Java不同版本新特性语法层面:Lambda表达式、switch、自动拆箱装箱、enum、泛型API...

  • 基于ARM架构服务器部署docker-compose

    基于arm64版本的docker-compose文件

  • 附件3-4:台区智能融合终端全性能试验增值税发票开具确认单.docx

    台区终端电科院送检文档

  • 埃夫特机器人Ethernet IP 通讯配置步骤

    埃夫特机器人Ethernet IP 通讯配置步骤

  • rv320e机器人重型关节行星摆线减速传动装置研发.rar

    rv320e机器人重型关节行星摆线减速传动装置研发

Global site tag (gtag.js) - Google Analytics