按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
编译数字来看,〃Adaptive piling〃是非常有希望的,因为它改善的幅度实在是很
大。因此全球相关的人员都在屏息以待,准备看看SUN最后的成果。
在SUN第1次公布HotSpot的推出时程之后,果然让所有Java的使用者都引颈期盼,恨
不得SUN立刻推出这个技术,解除大众执行Java的痛苦。不过随着时间不断的接近,
SUN在最后关头又宣布因为研发不及因此要延迟HotSpot推出的时程。软件研发的工作
延后在软件界见怪不怪,当时也没有引起太多的争议,不但让SUN争取到了更多的时
间,也顺利地延后了推出的时程。
不过在SUN宣布的第2次推出时程到期时,SUN仍然无法推出HotSpot技术。很快的SUN
不得不再次宣告要延后HotSpot的时程。就在这样SUN不断跳票的戏码重复上演的情形
下,终于开始有人笑称HotSpot根本是一个骗局,SUN根本无法推出接近C++执行效率
的Java编译技术。
到了1999年左右,SUN自知再也无法推拖HotSpot推出的时程了。因此在当年8月,当
时HotSpot研发小组的领导人(一位博士,但是我已经忘记了他的名字)在BorCon上进
行Keynote Speech,正式向参加BorCon的人介绍HotSpot技术并且在现场展示了HotSpot
的研发成果。虽然一切看起来都很棒,但是当现场的听众直接询问到底HotSpot技术
是否能够超越C++的执行效率时,这位博士却没有正面回答,只解释说在一些应用中
HotSpot的确可以提供超越C++的执行效率。我听了之后心中大概就已经知道HotSpot
最终的结果了。
果然在HotSpot被迫推出市场之后,大家很快地了解到HotSpot和C++的执行效率相比
终究是还有一段距离,根本无法超越C++的表现。这造成了当初一些热切期待的C/C++
程序员回到C/C++语言的市场,并没有转换到Java市场。这也是为什么后来C/C++市
场虽然受到了Java的影响,但是仍然有大量的使用者和市场,并没有像当时许多人预
测的那样将会有大量的C/C++程序员进入Java市场,终究还是因为Java无法完全取代
C/C++语言来完成一些工作。而SUN呢?为了转移大家对于HotSpot的失望而开始把研
发重点转到Internet/Intranet、EJB组件模型和Java Mobile系统方面的研发。轰动
一时的HotSpot热潮也逐渐淡去。
现在SUN再也不怎么提起HotSpot编译器了,只是在每一个新版本的JDK中不断持续的
改善HotSpot的编译品质。想起当初SUN对HotSpot不可一世的吹嘘最是令人感叹。不
过HotSpot也不是一无是处,的确是精进了许多Java ByteCode的产生品质以及JVM的
执行效率,只是没有达到当初SUN夸口逼近或是超越C语言编译器品质的程度。在目前
状况下,HotSpot能够让Java的编译品质在伺服端的效率有着显著的提升,提供非常
不错的执行效率。但是在客户端,尤其是牵涉到图形使用者接口Render方面的应用时,
仍然是相当缓慢的。
就Borland本身使用Java的情形来说,Borland使用Java开发的VisiBroker For Java
的执行效率已经相当接近VisiBroker For C/C++的执行效率。因此如果再搭配使用品
质良好的JVM,那么根据Borland内部的测试数据显示,VisiBroker For Java甚至在
一些特定的应用中超越了VisiBroker For C/C++。
HotSpot在纷纷扰扰的这么多年之后到底是不是一些人讥笑的〃笑话科技〃呢?不同的
人到现在可能还是有不同的答案吧。
Borland的困境和选择
Open JBuilder虽然赶在1997年最末的一班车推出,但在市场上的反映并不如预期的
好。当然这是有许多原因的。首先是Open JBuilder太晚推出,初期的Java市场早已
被其他的Java开发工具,特别是Visual Café所占领;第二是Open JBuilder急着推
出市场,因此在和其他Java开发工具竞争时并没有什么特别突出的功能、明显的优势,
竞争力当然不够;第三是Open JBuilder于一开始就混合地使用了Delphi和Java程序
代码,因此Open JBuilder激活以及窗体设计家的反应都很缓慢,不像Visual Café
那种以纯C/C++程序代码撰写的Java开发工具反应迅速,从而给许多程序员造成了
不良的印象。IBM的VisualAge For Java虽然也很迟缓,但在高阶的团队开发方面却
支持得很好,而且通常会使用团队开发功能的使用者大都是属于企业或是大型用户,
因此使用的机器配备也很好,对于VisualAge For Java的缓慢反应也还能够接受。
Open JBuilder的表现不如预期,这让Borland很着急,因为其无法承受失去Java开发
工具市场的损失。因此在Borland的Java开发工具研发小组中开始有了一些讨论,那
就是如何让Open JBuilder能够后来居上,取得胜利的果实。针对Open JBuilder的失
败原因,Open JBuilder的开发人员开始反思是否也应该像Visual Café一样使用
Delphi重新打造Open JBuilder,让Open JBuilder的执行反应加快到使用者能够接受
的地步,因为在当时Borland实在已经无法再加快Java的执行速度。此外使用Delphi
开发Open JBuilder的窗体设计家也可以避免许多JDK的臭虫,不会因SUN开发或是改
善JDK的时程而影响到Open JBuilder的开发周期。
这个想法在Open JBuilder的内部引起了很大的争议。使用Delphi重写Open JBuilder
的集成开发环境可以拥有许多短期的效益而且产品马上会有明显的改善,可以拥有和
其他竞争对手一搏的本钱。不过反对的人则认为使用原生开发工具开发Java的工具是
走回头路。这些人认为Java有朝一日一定会开发到成熟的阶段,到时Open JBuilder
就会拥有最后的胜利,现在只是一时的挫折,没有必要灰心。
对于Borland来说,如何继续Open JBuilder是一个困难的抉择,因为当时Borland急
需收入的挹注,而Open JBuilder的研发费用惊人,光靠Delphi力撑实在是很辛苦。
不过如果再回到使用Delphi开发,那么可能又会失去未来的机会,这到底应该如何决
定呢?
Java天才的加入
这一切的答案在Open JBuilder的新产品架构领导人Blake Stone加入后才逐渐明朗。
Blake Stone原本是DSW Systems Corporation公司的技术主管,而DSW公司一向和Borland
互动良好,许多DSW公司的人都曾在Borland的Conference(BorCon)中负责技术讲座。
Blake Stone先生也在1997年的BorCon中负责了一个讲座。也许是Blake Stone和Borland
在这次的BorCon中合作愉快,Borland也很赏识Blake Stone的技术和才华,因此在BorCon
结束之后不久,Borland便和Blake Stone接触,看看Blake是否有意愿加入Borland的
Java研发小组。也许是天意吧,在Borland失去了Anders这个天才之后,老天又给了
Borland一个弥补软件天才的机会。
在Borland和Blake接触之后,Blake不但对于Java未来的潜力看好,而且因为Blake也
曾使用Delphi,对于Borland研发开发工具的能力相当有信心。更凑巧的是由于Open
JBuilder 1。0的不尽人意,因此此时刚好有一个Open JBuilder的Architect离职,
让Blake立刻有了适当的职位。没有多久Blake便答应进入Borland作为JBuilder的
Architect,目的是带领JBuilder成为最成功的Java开发工具。由于Blake惊人的天
分,因此很快就成为JBuilder的主要Architect以及技术的主领导者,JBuilder未来
开发的Java技术都由Blake负责研究和研发的工作。
Blake进入JBuilder开发小组之后,面临的第一个挑战便是如何改造Open JBuilder,
让它执行得更为顺利,并且能够在竞争群中脱颖而出。当然Blake必须做的第一个抉
择就是Open JBuilder到底该走向纯Java的开发工具或是改成原生的Windows Java开
发工具。Blake并没有迟疑多久,便决定把JBuilder带向纯Java的开发工具,使用Java
语言本身来打造整个JBuilder。Blake做了如此的决定是有许多原因的。首先是Blake
希望通过使用Java语言开发JBuilder本身来让Borland的工程师彻底掌握Java的技术,
也希望通过这样的开发来证明Java的实用性。就像Delphi本身就是使用Object Pascal
和Delphi研发、Borland通过Object Pascal证明了Delphi的实用性和可靠性一样,
Blake也希望使用JBuilder来证明Java语言的可用性。
第2点是因为打造纯Java开发工具可以让JBuilder通过Java跨平台的特性把JBuilder
推向其他所有支持Java的平台,让Borland能够穿透到以往无法进入的市场,这样可
以让JBuilder的潜在市场和客户比竞争对手的更宽广、更多。
第3点因素则是Blake希望通过这个行动让Borland掌握Java的核心技术,最好能够和
SUN有更密切的互动,让Borland能够在Java领域取得相关的领导地位。因为在和以往
Microsoft交手的过程中,Borland深深了解到如果无法在一个技术领域取得第1或是
第2的地位,那么终将成为微不足道的角色,被市场淘汰出局。
Blake在JBuilder研发方向制定的策略事后都被证明是正确的。后来JBuilder果然能
够支持Windows、Linux和Solaris平台,成为当时架构最大、最复杂的Java应用程序。
更重要的是SUN充分肯定了Borland在Java方面卓越的技术,进而采用Borland的Baja
技术制定Java Bean规格并且邀请Borland共同参与开发Java的JDK。Blake在JBuilder
早期设定了成功的趋势,奠定了JBuilder成功的基础。稍后JBui