java

位置:IT落伍者 >> java >> 浏览文章

技术新知:新一代Java技术即将出现


发布日期:2020年02月29日
 
技术新知:新一代Java技术即将出现

Java技术自问世时光已经过去了个年头作为一名一直关注其成长的记者曾经一段时间有过这样的想法Java技术已经成熟是不是发展速度该放慢一些了呢然而这种想法错了近来Java技术的进化相当显着Java技术正在迎来又一次革命的风暴这就是本文的结论

又一次指的是什么?革命指的又是什么?光看结论的话肯定是一头雾水其实笔者要讲的并不是变化这样一个事实而是促进变化的原动力是什么让Java技术发生变化?让我们从这一角度出发先看一下Java的变化历程

Java正处于转变期

回顾Java技术的发展历程人们一定会感慨年到年发生的变化如此之大可以说现在正是Java技术的转换期 Java技术由编程语言(Java语言)运行环境(JVMJava虚拟机)框架(Java API群)组成目前在每一个层面上都发生着巨大的变化

)编程语言的变化

Java语言标准出现明显变化月发布的正式版本JSE(JSE:Java Platform Standard EditionJava技术的核心运行环境)中对Java语言标准中的Generics与元数据进行了大幅扩展出现了被认为是自Java问世以来的最大一次语言标准变化(美国Sun Microsystems)这次语言标准的变化给许多Java API带来了影响许多企业API的新版本都引入了基于元数据的注解(程序中记录的附加信息)以较短的编码记述更多的信息

)Java运行环境的变化

在JSE大幅度强化了JVM的管理功能与实用性换句话说就是具备了Java执行OS(操作系统)的特征例如原来在JEE (Java Platform Enterprise Edition构筑企业系统的Java技术)领域标准配备有作为管理功能的应用软件管理框架JMX不仅如此还配备有JVM自身监控功能((JSR : Monitoring and Management Specification for the Java Virtual Machine)在标准功能架构中可以实时监视JVM运行时的状态也就是内存使用量线程状态等

JSE中新追加的功能中包括并行处理实用程序(JSR 其基础是纽约州立大学Doug Lea提供的程序库也就是说标准规格中采用了来自民间的程序库

)框架的变化

服务器端的Java框架也发生了巨大变化企业级Java技术JEE的使用方法说明文件JEE Blueprint提出了将应用软件分为Web层EJB层(Enterprise JavaBeans将包括事务处理在内的业务进程模块化的框架)来构筑的思路这两种层次都迎来了架构更替时期Web层的新框架为JSF (JavaServer Faces将模块组合起来构筑Web应用程序的框架)EJB层为标准方案中刚刚公布的下一代EJB规格EJB

值得注意的是促成框架发生变化的正是来自民间的源码开放软件

对JSF产生影响的是作为源码开放的Web层框架得到普及的Apache StrutsJSF是对Struts的思路进行改进的产物JSF的Spec Lead(规格制定领袖)之一Craig R McClanahan就是Struts的作者

对EJB造成影响的也是民间源码开放软件EJB引入了DI(Dependency Injection依赖注入)容器类(Container)与POJO(Plain Old Java Object)持久类这些新功能大大减轻了编程的复杂性这些概念因PicoContainerSpring等源码开放软件的导入而引人注目

其背景在于用户对目前的EJB过于复杂的批评原本由EJB反对派提出的设计思想与源码开放软件却变成了EJB的中心概念显出了巨大的影响力

)脚本语言

在Java技术标准中新增加了编程语言Groovy(JSR 这是一种可与Java语言无缝连接的脚本语言有望以极短的程序完成相关处理在Java技术中添加Java以外的语言这听起来也许有些别扭其实以前就有这样的呼声希望将可以充分利用Java技术资源的脚本作为语言使用Groovy本来是源码开放软件最终得到认可被采纳为标准规格

由上述可以看出Java技术的构成要素正在发生巨大变化就在不久以前一提起服务器JavaServletJSPEJB是重要的 API这样的说明还占主流但现在基于JSF和EJB的应用程序已经变成了面目全非的程序而在运行短程序或测试时甚至还出现了不仅是 Java语言连脚本语言都开始调用Java框架的情况

这些变化从大的方面来看的话可以说是进一步发挥了Java面向对象的优势当然也包括提高开发效率提高运行稳定性简化运行管理等业务上的优势

开发者团体是真正的变革推动者

那么这些变化的原动力来自哪里呢?为什么说目前正面临着又一次变革呢?理由如下

在Java技术的发展过程中年到年是一个大的转折点JEE概念于年出现日本国内的JEE也在随后年内得到正式普及但这一技术体系早在年前就已经确立在我们眼前新一代Java技术的轮廓正逐渐显现出来

JCP(Java Community Process)年问世以会员制的组织形式推进Java技术的规格制订总体发展方向则以委员会的方式决定从而形成了不依赖特定企业的规格制订流程这一组织形式历经近年的时间逐渐发展成变革的推动者

JEE此前一直饱受批评认为Web层与EJB层的差距太大EJB过于复杂但这也是因为这是一项实际使用的技术JCP同样也遇到很多批评称其没有完全公开制定的技术标准却不可思议地让Sun拥有知识产权但JCP却作为一个团体不断发展壮大

直接推动Java技术变化的当事者为年前形成的基于团体的标准制订流程JCP但真正将讨论与技术纳入JCP的却是包括Java技术批评者在内的众多Java开发者团体他们也是早期开展Java技术变革的先行者由此诞生的下一代技术将会在年后逐渐波及主流企业用户

Java技术的变革推动者为开发者团体不受制于特定企业通过众多需要Java的开发者的建议Java技术正在不断发展进步

上一篇:Java对Domino Objects的访问控制

下一篇:Java中Static、this、super、final用法