推动Java前进--Java Strategy Keynote JavaOne 2011

每年的JavaOne都会发布关于Java未来发展的计划或愿景,在今年的Java Strategy Keynote中,Oracle则向大家描述了将如何推动Java继续前进。本文是JavaOne2011的官方博文,概述了Java Strategy Keynote中提及的重要内容。(2011.10.07最后更新)

周四的战略主旨演讲展示了Oracle在对待Java投资与创新方面的长期愿景。该议题包罗广泛,涉及技术,合作伙伴,宣言和路线图--从移动与手持设备,到桌面应用,再到云。早上,先由David Ward开始,他是Juniper Networks平台系统部门的CTO与首席架构师。Ward详述了在云时代开发者们认知并利用可编程的"由软件定义的网络"时代的必要性。Ward探究了直接对网络进行编程的应用接口,告之了它最得意的功能,使用网络设备确定实际的位置/拓扑,终端设备的功能,实时应用的要求,以及其它方面。总之,这些接口定义了一个双向的交互与可编程特性。Ward说道,"来源于网络的是对其拓扑的实时理解,而从应用空间到网络中去的是将通信引导到高效途径中"。

推动Java前进:三大支柱

随后,Hasan Rizvi,Oracle Fusion中间件与Java部门的高级副总裁,简要探讨了"推动Java前进"的三大支柱:正确的技术,Java社区,以及Oracle对Java的领导/管理。在该环节中,Rizvi提供了一个近期里程碑的记录,包括在今年夏天发布的JDK 7,正在开发中的(且由社区深度参与的)Java EE 7,JavaFX 2.0,以及刚刚针对Mac OS X发布的JDK 7预览版。他也提到了IBM,Apple以及SAP成为OpenJDK社区的成员,当然还有其它成员。
然后,Intel的Java技术主管Jason Gartner,RedHat的高级工程主管Mark Little博士,以及Intel的软件工程主管Steven Chin也走上台,加入到Rizvi的演讲中。Gartner宣布,上周发布了IBM平台上的Java 7,他也提到,尽管Oracle与IBM之间存在竞争关系,但Java平台基于标准的合作本质是它最强大的力量之一。他还稍稍讨论了Java EE 6的开放式开发成果,以及这对JBoss产品的益处。Chin讨论了Oracle与Intel之间的合作,在过去4年中,这一合作致使Java的性能在Intel硬件中提高了14倍。

延伸Java的触角

Adam Messinger,负责Java SE与Java ME产品线的副总裁,讨论了延伸Java的触角,以跨越新的应用模型及新的设备类型的目的。一种方法就是通过模块化,这是Java SE 8中的计划。同时,Java 7的Coin项目与Java 8的Lambda项目致力于更高的开发者生产效率。如下的路线图有清晰的描述:

Rob Benso,Twitter的运行时系统主管,随后也与Messinger同台演讲。Benson详述了Twitter在需要一个成熟且有高伸缩能力的技术时,是如何应用Java的。"我们每天要处理大约2.3亿条推特,我们的流API每天要推送大约6TB的数据,并且我们的公共API每天要服务大约13亿个请求。所以我们期望中的运行时环境要能够处理当前及未来的通信量。"Twitter选择了Java,是由于它有一个庞大且充满活力的开源社区。Twitter当场宣布,他们已经加入了OpenJDK,同样也加入了JCP。
Messinger重申推进JavaFX在战略上的重要性,JavaFX是Oracle首要的RIA开发环境,它包含对已有Swing应用的交互,以及能进行可视化开发的JavaFX Scene Builder工具。随后,Messinger的同事Nandini Ramani提供了一个实验性的JavaFX游戏的原型,该原型能运行在多种便携设备上--包括Windows,Linux,甚至是Apple iPad。
Messinger还宣布了Oracle对JavaFX的开源计划,首先开源的是组件,然后是框架的其它部分。只要OpenJDK社区提出要求,这一开源计划就会执行。另外,他们还计划对JavaFX进行标准化,使它成为Java SE的一个标准组成,这可能要到Java 8之后了。

Java移动与嵌入式的三大目标

后来,Messinger谈到Oracle针对Java移动与嵌入式体系的三大目标--在Java SE设备与Java ME设备之间起到桥梁作用(同步CLDC与JDK的版本/聚合CDC与嵌入式Java SE应用),完整地涵盖嵌入式垂直市场,并在运行时环境与工具方面提供深度的内容与服务整合。这必将导致Java Card技术应用于极小设备,Java ME应用于小的嵌入式环境,而Java SE应用于更大的嵌入式市场。在真正的嵌入式领域中,ARM的执行副总裁Lance Howarth探讨了"无处不在的计算"的将来。作为制造商随处都使用的32位RISC微处理器(基于ARM的设备已经出厂了610万台),Howarth预测对于智能计算设备,我们很少意识到,也很少见到把Java作为实现这一设想的关键。对之后,移动手机应用商店GetJar的CEO Ilya Lars探讨他们对移动领域的愿景,以及他们对Java开放标准的提案。

Java EE路线图

Oracle开发部门的副总裁Cameron Purdy详述了Java EE路线图。Purdy提到Java EE是"企业级应用所依赖的唯一标准开发平台",这些应用可以跨越不同的社区,不同的软件提供商,以及不同的开源实现。他还讲到Java EE当前是企业级开发者的首选,它已经被下载4000万次了。Java EE的目标是使EE易于开发--在从事往常复杂而费解的任务时,EE会使Java开发者们感到更为自然,同时为下一代企业应用建立了一个开放的,由社区驱动的,且基于标准的平台。他探讨了很多Java EE 7的独创特性,如多租用(multi-tenancy),按需扩容(capacity on demand),以及自动提供(auto-provisioning),这些特性使高级云应用及其平台成为一种服务。
随后,ESPN的Sean Comerford与Purdy讨论了在ESPN.com在当前的企业需求中对Java EE的选择。"Glassfish给了我们相同的性能,但与其它可选技术相比,它还具备高得多的可伸缩性。在处理每秒3000次请求的场景中,对我们的产品部署进行了测试。"对于ESPN,游戏的规则就是可伸缩性,还伴随着未来在任何地方、任何设备上提供服务的潜在可能。然后,Adam Messinger以对Avatar项目的介绍结束了本场会议。Avatar项目是Oracle针对动态富客户端的混合编程模型,它在浏览器中集成HTML 5作为UI,使Java应用作为控制器与模型,而Java EE 7则在后台的云中--这统一了Java ME,Java SE和Java EE。

本文出自seven的测试人生公众号最新内容请见作者的GitHub页:http://qaseven.github.io/

时间: 2024-12-03 01:01:01

推动Java前进--Java Strategy Keynote JavaOne 2011的相关文章

JavaOne 2011战略主题:Java ME、SE和EE的未来规划

Java EE的下个版本将支持云计算.多站点(multi-tenancy,多站点,多租户).可扩展以及缓存等特性.在近日举行的JavaOne 2011大会上,来自Oracle团队的Adam Messinger.Hasan Rizvi和Cameron Purdy分别针对不同Java平台的产品路线图进行了介绍,其中包括移动版(ME,Micro Edition).标准版(SE,Standard Edition)以及企业版(EE,Enterprise Edition)这三种Java平台. Cameron

Java那些事儿 - JavaOne 2011、CDI和Google Dart语言

对于Java社区来说,9月和10月间最重要的事件是一年一度的JavaOne大会的召开.JavaOne 2011的 主题是"推动Java向前发展(Moving Java Forward)".从这个主题可以看出,Oracle正试图以领导者的身份带领Java社区来共同推动Java的发展.Java SE 7的发布,是这个过程中的一个重要里程碑.相对于上一次JavaOne会议来说,JavaOne 2011在社区中的评价比较不错,被认为是一次成功的会议.Oracle也更加重视社区在推动Java发展

Java设计模式之Strategy模式_java

基于有了OO的基础后,开始认真学习设计模式!设计模式是java设计中必不可少的! Apple.java package strategy; /** * * @author Andy * */ public class Apple implements Discountable { //重量 private double weight; //单价 实际开发中 设计金钱等精确计算都是BigDecimal; private double price; //按购买量打折 // private Disco

Java、Java Applet与 &#106avascript间的通信

摘 要:本文着重阐述了网页开发中,通过灵活使用从JavaScript语言中访问Java的方法.从JavaScript中访问JavaScript小程序的方法与变量,以及在Java Applet小程序中使用JavaScript等技术,实现这几种网页开发语言的互相补充,以开发更完美的Web应用程序. JavaScript是用于HTML环境的开发语言,提供了能够响应Web页面事件的脚本,可以完全访问浏览器窗口的各个方面,善于合并HTML.Java Applet小程序.插入件.服务器方程序和其他Web组件

用 Java 生成 Java:CodeModel 介绍

在我们编写代码的时候,常常会有这样的情形:一部分代码是可以根据另一部分代码按照某种特定的模式变化而来的: 有时,随着那一部分被依赖的代码发生变化,依赖的代码不得不跟着修改:有时,这样的代码会随着项目的推进,不止一次 的出现.很典型的一个例子就是,当需要自己实现数据访问层时,通常每个实体类会对应一个 DAO(数据访问对象)类,并 且一般来讲 DAO 类的代码编写是很机械的.这时,我们就需要使用"代码生成"来提高我们的开发效率以及提高代码的可 维护性. Java 有很多种方法可以实现&qu

java继承-JAVA抽象类(新手求解)

问题描述 JAVA抽象类(新手求解) 子类继承了一个抽象类,抽象类中没有无参构造函数,有有参构造.请问子类能实例化么?如果能,怎么做? 解决方案 子类构造方法中使用super()传参,指定一个父类的构造器 假如父类构造器是private修饰的那就没办法继承了. 解决方案二: 能,可以直接使用无参,也可以使用父类的有参构造 解决方案三: 首先,你应该先了解继承的原理,继承的强大在于子类可以继承来自父类的一切可继承的特征和行为,更重要的是子类不仅仅可以继承来自父类的特征和行为,而且还具备自我扩展的能

java web java.lang.NullPointerException

问题描述 java web java.lang.NullPointerException 严重: Servlet.service() for servlet [selectServlet] in context with path [/Exercise] threw exceptionjava.lang.NullPointerException at DB.DataBaseConnection.selectOperation1(DataBaseConnection.java:45) at Ser

java 利用java反射机制动态加载类的简单实现_java

如下所示: ////////////////// Load.java package org.bromon.reflect; import java.util.ArrayList; import java.util.List; public class Load implements Operator { @Override public List<?> act(List<?> params) { // TODO Auto-generated method stub List<

方向-关于C#,C++,asp.net,java ee,java se,vc ++ 开发的一些问题

问题描述 关于C#,C++,asp.net,java ee,java se,vc ++ 开发的一些问题 我现在大二下学期了,暂时还没有分方向的,我先在准备向c++ 方向发展 ,路线大致是这样的: c++ primer 5-> windows程序设计/ vc ++ 程序设计,做一些小程序 -> effect c++ -> more effect c++ -> windows 内核 等等,这样好吗? 以后出去好找工作吗? 我现在学习了 c++ 语言,java 语言,c语言 ,c#语言有