热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

2009年Java技术发展动态与未来走向分析

自1995年问世以来,Java已历经14年的演变,在快速发展的信息技术领域中展现出持续的活力与创新。如今,Java不仅是一种编程语言,更发展成为一个多功能平台、活跃的开发者社区及成熟的技术生态系统。

已经有14岁的Java在日新月异的IT技术领域内不算年轻,但它一直没有停下变革,创新的脚步。Java已经不单单是一种计算机语言,很多情况 下,我们称它是一个平台,一个社区,以及一个生态系统。下面从Java SE, Java EE, Java ME, JavaFX几个方面,简要介绍一下Java技术在2009年的变化和趋势。

JavaSE

目前JDK的正式版本是JDK 6 Update 12。JDK 6 Update 10以来的版本, 关键功能包括:

Java内核大大缩小了,由原来的大约十几兆缩小到4兆,这样提高了启动Java程序的速度。而其它的Java库在需要的时候可以后台下载,这样也缩短了等待和安装的时间。

下 一代的Plug-in架构。Applet运行在自己的进程中,而不再依赖浏览器,提高了性能和可伸缩性。在2008 JavaOne 有一段很酷的演示,就是将Applet直接从浏览器中拖拽到桌面上,或者从桌面上拖到浏览器中。这个功能的实现有赖于JDK 6中重写了连接 Java运行环境和浏览器的代码。这个新的Plug-in架构还提供一个有意思的功能,可以在Web页面通过Javascript调用Web页面上任何的 Applet, 不管这个Applet是用哪种语言写的,比如JavaFX Script, JRuby, Jython。

这里要 提到JDK 6中Java虚拟机(JVM)对动态语言的支持(JSR 223)。这个框架可以使Java应用程序中支持脚本引擎,这样各种脚本语言就可以运行在JVM上。JVM发展的一个重要方向就是去掉“J”,让JVM成 为能支持各种语言的,全能的“VM(虚拟机)”。目前JVM支持的脚本语言包括:JavaFX Script, Groovy, JRuby, Jython, Javascript, Scala, Clojure。可以预计到的是,将来会有更多的脚本语言运行在Java虚拟机上。

还在草案阶段的JDK7,一些新特性也值得期待:

一个是实现JDK 7模块化(JSR 294, JSR 277), 将与OSGi联盟更紧密的配合,以便JSR 294模块可以被OSGi所使用。
另外一个是并行包。这个包致力于通过充分利用底层硬件来达到真正的并发。随着硬件多核系统的广泛应用,并行计算的需求对Java的性能提出了更高要求。

Java EE

Java EE 6 (JSR 316)的公众审议将在2009年2月23号结束。Java EE 6继承了Java EE 5改进的目标,就是简化开发,另外,还增加了一个目标,更好地满足开发人员的需求。关于Java EE 6的讨论持续了很长时间,而争议最大的就是Java EE 6引入的Profile。

Java EE十年来的发展结果,是这个平台变得越来越庞大,但对很多用户和开发者来说,也许他只需要使用众多功能中的很小一部分,却不得不安装整个平台。 Profile就是为解决这个问题而定义的。Profile实际上是Java EE API的子集。讨论最热烈的Web Profile就集中在,哪些API应该被放在标准Profile中?

Jave EE 6包括了一系列的新技术和升级,篇幅所限制,仅罗列一些名词:WebBean 1.0, JSF 2.0, EJB 3.1, JPA 2.0, Servlet 3.0, JAX-RS 1.1。

Java ME

Mobile Service Architecture 2 (MSA 2) 目前已经到了公众审议的尾声 (JSR 249)。预计2009年,MSA 2将进入实用阶段。MSA 2是下一代Java ME平台技术,提供了更多移动开发的新特性,比如可以访问手持设备上的各种传感器,如加速计传感器,电池容量(JSR256);可以在手机上看电视 (JSR 272); 如同信用卡支付功能的手机钱包(JSR 257); 使用XML,脚本,与Java一同构造GUI (JSR 290); 通过手机使用VOIP服务(JSR 281)。

JavaFX

Java 在企业应用程序的开发中一直占主导地位,但现在面向消费者的富互联网应用(Rich Internet Application, RIA)软件数量在急剧增加,这种情形下,JavaFX应运而生。和Java语言相比,JavaFX Script更适合开发高效,快速地开发集合各种媒体,交互性强,界面吸引用户的RIA应用程序。2009年2月,JavaFX SDK 1.1 与 JavaFX Mobile都正式发布了,下一个要期待的是JavaFX TV。借助Java这个强大的平台,JavaFX目标是提供给开发者更好的RIA平台与技术,除了继续要在传统的PC桌面保持优势外,更是面向未来的终端 设备,手机和电视。

做为一个开发者,我依旧看好Java的未来。


推荐阅读
  • 通过Apache Commons FileUpload组件,可以根据具体应用需求实现多样化的文件上传功能。在基本应用场景中,开发者可以通过调用单一方法来解析Servlet请求,从而轻松处理文件上传任务。此外,该组件还提供了丰富的配置选项和高级功能,支持大文件上传、多文件并发处理等复杂场景,显著提升了文件上传的效率和可靠性。 ... [详细]
  • 在探讨Java动态代理机制时,本文深入分析了其核心原理与实现方式,并详细讨论了该机制在Spring框架中的应用,特别是在AOP(面向切面编程)中的作用。通过实例解析,读者可以更好地理解如何利用动态代理增强代码的灵活性和可维护性。 ... [详细]
  • 在IIS环境中部署Go API应用:Golang面试指南
    这篇文章介绍了在IIS上部署Go API项目的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着 ... [详细]
  • 深入解析Java内存架构、垃圾回收机制与内存泄漏问题
    Java内存架构(Java内存模型)上面是堆的Java内存模型以及Java虚拟机(JVM)中运行的任何Java应用程序的Pe ... [详细]
  • 本文整理了Java中org.jruby.RubyModule.putMethod方法的一些代码示例,展示了RubyModule.putMethod ... [详细]
  • android anko,Anko for Android
    Anko是一个使开发Android应用更简单更快捷的库,Anko使你的代码简洁易懂,使开发者不用再在意AndroidSDK对Java版本的限制(目前还不支持Java8。).Anko ... [详细]
  • Hashtable和HashMap之间的区别Hashtable是继承了Dictionary,是线程安全的。HashMap实现了Map接口,不是线程安全的 ... [详细]
  • 如果你对 IntelliJ IDEA 的界面不太熟悉,可能会对如何在 Android Studio 中执行一些常见任务感到困惑。本文提供了多种开发技巧和实用窍门,帮助开发者更好地利用 Android Studio 的强大功能,包括界面导航、代码调试和项目管理等方面,使开发过程更加高效顺畅。 ... [详细]
  • 本文通过复旦大学自然语言处理课程中的一个具体案例,详细解析了中文词汇分割技术的实现方法。该案例利用Java编程语言,结合词典和算法模型,展示了如何高效地进行中文文本的词汇分割,为相关研究和应用提供了宝贵的参考。 ... [详细]
  • 在Java NIO中,`ByteBuffer` 的内存分配方式分为 `allocate` 和 `allocateDirect`。前者在JVM堆内存中分配空间,返回 `HeapByteBuffer` 实例,初始位置为0,容量和限制由参数指定。而 `allocateDirect` 则在操作系统本地内存中分配,返回 `DirectByteBuffer`,适用于需要频繁与I/O操作交互的场景,性能更高但管理成本较大。两者在内存管理和性能上各有优劣,选择时需根据具体应用场景权衡。 ... [详细]
  • 明特量化1、分析如下代码,编译运行后的结果()publicstaticvoidmain(String[]argsÿ ... [详细]
  • 1、war是一个web模块,其中需要包括WEB-INF,是可以直接运行的WEB模块;jar一般只是包括一些class文件,在声明了Main_class之后是可以用java命令运行的。2、wa ... [详细]
  • 1.html页面如何使用swiper对swiper不熟练的小伙伴们可能不知道怎么开始使用它,那么下面就让我来简单讲述一下关于swiper的使用流程,这 ... [详细]
  • 一段程序结束等待进行下一段程序_给你的Java程序拍个片子吧:jstack命令解析
    前言如果有一天,你的Java程序长时间停顿,也许是它病了,需要用jstack拍个片子分析分析,才能诊断具体什么病症ÿ ... [详细]
  • 工作原理_一文理解 Spark 基础概念及工作原理
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了一文理解Spark基础概念及工作原理相关的知识,希望对你有一定的参考价值。 ... [详细]
author-avatar
sunci99_652
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有