首页 > 专栏 >
Java的10年
迈过6道门槛
PCWorld.COM.CN | 2005-10-08 15:35 | 《微电脑世界》2005年9月1日出版
第1页:Java过去的10年 第2页:迈过6道门槛 第3页:Java未来的10年 第4页:Java常识
迈过6道门槛 过去10年的发展中,Java也有很多坎坷经历,不过Java都走过来了。 Java遇到的第一道门槛是速度问题。Java提供给开发人员的一个关键优势是Java运行时环境负责内存管理,减少开发人员犯低层次错误的可能性,但是这也牺牲了性能优势。 早期Java版本编写的程序比用C和C++编写的同样的程序慢得多,随着Java进入企业环境,这一性能问题变得更为严重。 随着即时(JIT)编译器技术的改进,Java终于获得了更好的优化和快速的执行环境。目前的基准测试显示,Java弥合了它与C和C++等前辈之间的大部分差距。 Java遇到的第二道门槛仍然是可移植性问题。Java号称“编写一次,到处运行。”但是开始的时候经常是“编写一次,到处调试”。目前,这些问题也基本得到了解决,这要感谢一系列为使客户端Java应用做出许多贡献的GUI框架。 目前,Java常常等同于可移植性,这个观点已经得到绝大多数开发人员的认同。运行在J2EE平台上的提供数据库互动、业务逻辑以及为数据表示生成Web界面的服务器端软件可以充分证明这一问题。 Java遇到的第三道门槛是平衡创新性与统一性。Java的成长得益于很多机构的开放源代码Java项目,也得益于多家大公司(如IBM)向开放源代码社区捐献的Java代码。开放源代码的模式无疑是Java创新性的源泉,但是创新者的想法往往也并不一致。一些用户甚至建议由开放源代码社区掌管一种完全开放源代码版本的Java。这时候,统一标准就变得非常重要,否则就会像当年分裂的Unix一样失败。最终,Sun创造了JCP(Java社区进程),JCP建立委员会来评估和开发用于Java平台的技术,从而建立起一种行之有效平衡机制。 Java遇到的第四道门槛是.NET的进攻。2001年,Microsoft以.NET开发框架的形式推出了传说中的“Java杀手”,.Net运行时环境支持多种开发语言——包括C++和Visual Basic这两种拥有大量支持者的语言,并且具有很多竞争性的优势。2004年,Sun和Microsoft终于在为Microsoft的Java执行环境定制版本而打的一场艰苦的官司中达成了和解,现在这两家宿敌宣称是合作伙伴。目前,客户通常混用这两种技术。有迹象显示未来这两种技术之间的关系将更加紧密。最近,Sun公司CEO Scott McNealy宣布,Sun将向着更广泛的集成Java与.Net运行环境而努力。 Java遇到的第五道门槛是复杂性危机。由于企业应用需求的复杂性,J2EE已经变成一种宏大而错综复杂的技术综合体,包括电子邮件服务、数据库连接、目录访问与管理、事务处理等等。全面掌握这些包罗万象的技术,对于J2EE开发人员来说是几乎不可能。J2EE中包含的每一种技术本身就可能成为一个专业。因此,设计、编写和调试J2EE应用程序成了令人生畏的事情。目前的解决之道是,用户只选择使用J2EE规范的某个子集。这些技术使他们不必接受整个J2EE体系就可以完成大量的基本企业开发。 Java遇到的第六个门槛是EJB的艰难。EJB难以编写、实现和进行单元测试(unit test)。它们制约了使用继承性,并依赖于复杂的模型来保持数据。所幸的是,开放源代码社区以透明处理大量J2EE的复杂性框架的形式提供了解决方案,Hibernate和Spring就是其中的两个最受欢迎的框架。Sun一直在开发EJB规范的新版本J2EE 5.0,旨在使程序员可以更简单地访问和使用服务。
PCWORLD中国网独家稿件,转载请联系 editor#pcworld.com.cn(请将#改成@)
下一页:Java未来的10年
相关文章
· Java开源项目实现AI编程  2005-08-30 10:15:25
· 2005Java中国开发者大会即将召开  2005-08-17 11:01:29
· Java携手Sun共同探索软件开源  2005-07-12 13:45:28
· 为RFID装上Java的翅膀  2005-07-01 10:00:04