2005年是Java10诞生10年,全世界的Java程序员通过不同的方式为Java庆祝生日,10年前还很幼稚的小东西,今天已经成为软件业的一个重要体系。在10年的发展历程中Java阵营诞生了许多杰出的思想,这些思想演化成众多的开发架构和开发工具,也因此导致Java技术派系众多,让架构师难于选择,应用系统复杂而且昂贵。为了这解决这个问题,Java专家们们提出一系列的新的技术规范,这些技术的目的就是使Java更简单,不仅仅是Java语言,还包括开发工具和框架。融合与开放成为2005年Java发展的主要特征。
处于二次革命前夜的Java
在Java领域中Sun公司具有举足轻重的地位,在2005年Sun推出了一系列新的技术规范,希望继续简化并重新整合Java技术。7月Sun连续公布两个技术规范:JSR-196和JSR-277,JSR-196简化了J2EE应用服务器整合第三方验证服务,JSR-277又被称为"Java模块系统",Sun希望通过该规范解决了现在Java应用在部署时的麻烦,同时彻底废除JAR文件格式,采用新的Java模块打包Java程序。
随后Sun在8月举行的JavaOne大会上宣布取消J2XE的命名规则,新的命名以JavaEE/SE为主,如果仅仅是改换个命名方式是不会引起震动的,从Sun 随后公布的文件看,这不是一个简单的改名,其中的技术跨度很大,可以把它看成一种新的技术而不是J2EE的延续。
然而事情并未结束,不久前,Sun又向JCP(Java Community Process,Sun于1998年发起成立的一个开放的非赢利性组织,负责处理和审批各种Java技术和技术规范)提交了JSR 224-Java EE 5的 最后草稿,在这个草稿中,Java EE 5的重点是简化应用开发,尤其是大量采用元数据标注(annotation)和POJO(普通Java对象)驱动的开发方式,对平台进行了重新定义。JSR-244则规定了Java EE 5总体框架下需要具备的技术特性。Sun坚定的走上了简化Java的道路,甚至不惜重建一个Java。
JavaBeans体系发展之争愈加激烈,对象持久化技术JDO、EJB和Hibernate在2005 年的际遇可谓几家欢乐几家愁。命运多舛的JDO 2.0未能通过JCP的表决,遭遇重大挫折,JCP的委员们声称JDO 2.0在轻量级存储模型上与EJB3.0存在冲突,而让两种不同的规范来描述同样的问题,将使J2EE变得更复杂。但否决JDO 2.0给JCP带来不小的麻烦,Java社群内群言汹汹,大有不推翻此结果不罢休之意,因此,JCP决定为EJB3.0重新提供一套API(应用程序接口),JDO将通过这套API得到支持,看来JDO未来的出路将是被EJB收编。与JDO不同,Hibernate今年的发展很顺利,Hibernate在被JBoss收购后发表了3.0版本,在这个版本中Hibernate增加了对XML持久化的支持,也没有出现被绑定在JBoss上情景,这曾让开发人员担心不小。
Java开源和免费势不可挡
在Java诞生之初,Sun及其明智的为制定了一个开放的发展策略,为Java的发展创造了一个良好的环境,可以说正是这个策略造就今天繁荣兴旺的局面,也因此Java与开源结下了不解之缘。
在2005年Java开源迎来新一波高峰,Java世界的众多产品和开发工具纷纷开放源代码,开源项目Eclipse正在逐渐统一Java IDE(集成开发工具),继Borland宣布将把产品线全面转入Eclipse后,Bea也计划把weblogc workshop转移到eclipse平台上,Eclipse在逐步统一Java IDE;目前抗拒Eclipse魅力的还剩下Sun,Sun虽然部分开放了Java源代码,但声称不打算加入Eclipse项目,将坚持发展Netbeans,但Sun的困难在于Netbeans的插件开发社群远远小于Eclipse,即使Sun说服中国教育部在高校中推广Netbeans,这个差距也不是短时间能弥补的。
Eclipse的成功也让Sun看到了开放的架构的巨大吸引力,Sun提出了一个类似.net的脚本运行时环境JSR-232,在这个环境上可以集成各种脚本语言,甚至包括PHP、Groovy,以后也许还有python、ruby;这不由得让人对它充满希望。
Sun在部分开放Java源代码后宣布所有软件免费,Sun今后将从技术支持和服务中获取利润。IBM和JetBrains也宣布免费,幸福来得太突然,我们进入免费时代了。
在2004年曾经在IT界引发狂热的AOP和SOA在理论上已经成熟,开始进入技术应用期。技术人员开始从事将AOP的三个主要框架:AspectJ、AspectWerkz、Spring实现合并,力图提供一个单一的AOP编程平台。AspectJ和AspectWerkz的项目组已经合为一体,共同推出了第一个产品AspectJ5,AspectJ的项目领导人Adrian Colyer则离开了IBM,加入interface21,期望能致力于AspectJ与Spring的融合。
2005年岁末Bea技术大会在北京举行,人们很快发现这次会议成为SOA宣传会和产品展示会,Bea展示了令人眼花缭乱的的SOA产品,人们不禁怀疑Bea是否有意充当SOA应用的排头兵。欲在SOA市场大展拳脚的还有蓝色巨人IBM,IBM在不久前为其中间件WebSphere家族增加了一系列新产品,而这些产品都是针对SOA应用的,同时IBM还联合Oracle、BEA、SAP、Sybase等巨头将SDO和SCA(Service Component Architecture (SCA) and Service Data Objects (SDO))混合组成了一个SOA编程模型,试图简化开发和组装实际业务服务。
Java在中国
2005年Javachina大会在中国召开,这是Sun首次在中国召开的Java技术大会,Java社群的传奇人物纷纷登陆中国,与中国开发人员探讨Java技术的发展应用,这是Java发展史上的第一次,也是Sun、IBM、Bea等厂商10年来不遗余力地推广的结果。
如果说国内Java技术前些年是在追赶世界的话,那么近年来中国Java技术的发展已经紧紧抓住了世界潮流,开始与世界同步。Hibernate、Spring、AOP、SOA等技术都是在最短时间里介绍到国内的,Ajax刚在海外露头,国内就诞生了相似的应用框架,而国内工程师的身影也出现在制定JDO、EJB规范的专家组中。但是,与中国软件的大环境相同,目前国内的Java技术主要还是集中在应用层面,所有核心技术的知识产权都在海外。
根据中国软件产业协会的统计,国内超过三分之二的软件企业在采用Java进行开发,北京有90%的软件公司都有Java开发部门。虽然有这么多企业采用Java进行软件开发,但国内成熟的Java应用软件还不多见,还没有建立统一的Java标准体系和安全架构,也没有人监控,这些问题的存在使对企业进行软件开发增加了成本,也降低了客户对Java产品的信任。与行业软件相反,Java在移动领域的发展非常顺利,国内所有手机厂商都在生产支持Java技术的手机,短信和手机游戏等业务几乎全部是采用Java技术开发,Java技术几乎成为行业标准。
Java在中国的发展与中国程序员的努力密不可分。目前中国有十多万Java程序员,书店里堆满了Java技术书籍,各种培训机构、软件学院中Java都是重要课程。不过国内从事Java开发的人数虽多,但精通者很少,有创造力的则更少。
结束语
毫无疑问2005年Java在各个技术层面都取得了巨大的进步,新技术的出现时间以月计,在这些技术的引领下未来的Java将变更简洁,代码编写量更少,开发周期更短。
在2005年开放成为Java的共识,以往让开发人员难以抉择的框架体系,开始走向彼此融合的道路。开放加上Java世界里从来不缺的天才的思想,将保证Java的顺利发展。
分享到:
相关推荐
java采购管理信息系统文献综述 .doc
Java OCR(Optical Character Recognition,光学字符识别)技术是一种计算机视觉领域的应用,它能将图像中的文字转换成可编辑的文本格式。这项技术在各种场景下都有广泛应用,比如文档扫描、车牌识别、发票处理等。...
《JAVA核心技术(卷1):基础知识(原书第8版)》是《Java核心技术》的最新版,《Java核心技术》出版以来一直畅销不衰,深受读者青睐,每个新版本都尽可能快地跟上Java开发工具箱发展的步伐,而且每一版都重新改写了...
java小区物业管理系统 文献综述.doc
1. **工作成果展示**:这部分应详细列出在过去的半年或一年中参与的项目,包括项目的性质、目标、使用的Java技术以及你在项目中的角色。例如,你可能涉及了Spring Boot框架的应用、MyBatis的数据库交互或者微服务...
Java技术大系精通JBuilder2005中文版高清PDF Java技术大系精通JBuilder2005中文版高清PDF Java技术大系精通JBuilder2005中文版高清PDF Java技术大系精通JBuilder2005中文版高清PDF Java技术大系精通JBuilder2005中文...
《Tomcat与Java Web开发技术详解(第2版)》结合最新的Tomcat 6版本,详细介绍了开发Java Web应用的各种技术。主要内容包括:Tomcat和Java Web开发的基础知识、Java Web开发的高级技术、在Java Web应用中运用第三方...
"千里之行购物网站"是一个综合性的电子商务平台,它运用了多种核心技术,包括Java、JavaScript、HTML和SQL Server 2005,来构建其功能强大的前后台系统。这个项目展示了如何将这些技术有效地整合在一起,以实现一个...
HelloWorldApp.java 第一个用Java开发的应用程序。 firstApplet.java 第一个用Java开发的Applet小程序。 firstApplet.htm 用来装载Applet的网页文件 第2章 示例描述:本章介绍开发Java的基础语法知识。 ...
这些概念和技术是Java语言的核心组成部分,了解它们对于掌握Java语言非常重要。 Java语言是当今最流行的编程语言之一,它的设计目标是提供一个平台独立、简单易学、可扩展和高度安全的编程语言。Java语言的应用非常...
第1章 Java 程序设计概述 1.1 Java 程序设计平台 1.2 Java 白皮书的关键术语 1.2.1 简单性 1.2.2 面向对象 1.2.3 网络技能 1.2.4 健壮性 1.2.5 安全性 1.2.6 体系结构中立 1.2.7可移植性 1.2.8 解释型 1.2.9 高性能 ...
Java毕业设计源码-基于Java mail的邮件收发系统(系统+开题报告+任务书+文献综述+答辩PPT)(IT计算机)Java毕业设计源码-基于Java mail的邮件收发系统(系统+开题报告+任务书+文献综述+答辩PPT)(IT计算机)Java...
主要内容包括p2p概述、p2p网络拓扑结构、p2p网络搜索技术、p2p关键技术及...技术、基于java的p2p开发平台搭建、sloape的开发包及插件开发技术、基于p2p的即时通信系统的开发与实现、bt系统分析及客户端开发、jxta技术等...
- 支持复杂的Web应用,可以与其他Java技术结合使用,如Servlets和JavaBeans。 - 在文档中提到了几本关于JSP技术的书籍,例如《jsp实用案例教程》、《jsp动态网页编程技术》等,这些资料可以帮助读者深入学习JSP...
【标题】:“Tomcat与Java.Web开发技术详解”是一本深度探讨Tomcat服务器与Java Web应用开发的专业资料,旨在帮助开发者全面理解并掌握这两项关键技术。 【内容详解】: 1. **Tomcat介绍**:Tomcat是Apache软件基金...
Java毕业设计源码-基于Java J2EE的B2C电子商务系统开发(+系统+开题报告+文献综述+任务书+答辩PPT+说明书)Java毕业设计源码-基于Java J2EE的B2C电子商务系统开发(+系统+开题报告+文献综述+任务书+答辩PPT+说明书)...
这是一本以面试题为入口讲解 Java 核心内容的技术书籍,书中内容极力的向你证实代码是对数学逻辑的具体实现。当你仔细阅读书籍时,会发现Java中有大量的数学知识,包括:扰动函数、负载因子、拉链寻址、开放寻址、...
JAVA框架核心技术笔记... 笔记打包下载 1-JSP+JDBC_假分页笔记 2-JSP+JDBC_真分页(基于Oracle数据库分页)笔记 005_Struts+DAO登陆 23-26Hibernate数据关联技术笔记 44登陆案例(Struts+DAO+...