技术开发 频道

展望Java未来 走进2010年 Java圆桌会议

  Java 7:闭包和并发性

  经过 3 年多的努力,Java 7 已经确定于 2010 年末发行。我们问到闭包是否仍然值得争论,以及 JDK 7 是否足以应对并发性方面的挑战。

  一些人质疑 Java 7 与基本应用程序开发的相关性。“我仍然遇到客户机在 Java 1.3 上卡住的问题,因为需要商业公司提供应用服务器”,Andrew Glover 说,“由于这些现实让 Java 7 的采用在某些领域变得遥不可及。”

  Java 4 和 Java 5 引入了一些激动人心的特性, Steve Perry 说,“但对于 Java 7 就有所不同了。但是,使用稳定的已有技术则更能发挥自己作为顾问的作用。”

  一些最有趣的并发工作正独立于 Java 7 进行,Glover 说,比如一些开源工作,基于 Java 的框架 Kilim 和函数语言如 Scala。

  “JSR 203 是 NIO 中非常有用的增强。JSR 166 有一些很好的并发更新,并且我仍然希望 JSR 310 继续发扬光大。” Alex Miller 说。

  Miller 还看到 JVM 中新增了一些好功能,他表示,“一些围绕 invokedynamic 的工作正在进行之中,可能会是一些热门的新型垃圾收集器 G1。”

  就闭包而言,Miller 说,他们仍然值得争论,并且我很高兴它们能重回阵营。

  其中,闭包将 “为各种 JVM 语言之间的通信提供一种公共的标准字节码格式”,Neal Ford 说,“现在,Scala 使用与 JRuby、Clojure 和 Groovy 不同的内部表示;它们都有自己的字节格式。” 建立一种内部格式可以让所有基于 Java 的语言解析相同的内部表示,他说。

  “Groovy 的成功表示人们希望闭包出现在 Java 中”,Dan Allen 说。他还对 Java 中缺少属性和直接字段/方法引用表示失望,他说这样会导致浪费和/或传递类型安全性。

 Java 7:闭包和并发性

  “许多语言信息会在编译时丢失,而它们本来可为框架开发人员提供很大的用处”,Allen 说。“一个例子是方法参数的名称以及各种通用类型信息,它们已经从 Java 移动到字节码中。”

  “虽然注释极为出色,但它们仅是需要支持的元数据最表面的一层”,他说。

  但是,“Java 语言设计者应该在版本 7 时释放 Java”,Ford 说,“Java 语言将成为 JVM 的汇编语言:允许低级访问,因为您所编写的是低级库,以及允许维护。”

  甚至在平台前端,Miller 说,“Java 就其本身而言当前并不适合革命性改变 — 它仍然会顺变趋势和用户的期望。而企业正希望如此。”

0
相关文章