borland传奇-第15节
按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
这宗合并案子,再加上Borland被Delbert搞得乌烟瘴气,下台的命运也就不可避免了。
也许是〃天将降大任于斯人也,必先苦其心志,空乏其身〃吧,Borland在Philippe Kahn
离开之后,历经了数任CEO,但是一直没有找到真正好的CEO,能够适当地带领Borland
走向光明。不过Delbert Yocam似乎是黎明前的黑暗,在Delbert不名誉地离开Borland
之后,Borland也即将看到未来之光。
Danny的接棒和决心
Delphi 4的仓促推出果然在市场上反应很差,销量上也一落千丈。原本寄望能够再次
获得好成绩让Delphi的总销售量再次冲上新高,并且为Borland带来更多的营收。但
这一切都很快地幻灭了,品质不好的产品仍然得面对市场严厉的考验。在Delphi 4遭
受了前所未有的失败、接着C++Builder 4也铩羽而归之后,Borland又开始走下坡路
了。Borland好不容易通过Delphi带来的希望却在错误的决策下被牺牲了。在1999年
4月Delbert终于被Borland的董事会扫地出门,结束了在Borland的日子。我认为,
Delbert在Borland将近3年的时间里,对Bodand造成了许多的伤害,其好大喜功的管
理方式对Borland的产品线更几乎造成了无法弥补的伤害,是我所认为的最糟糕的
Borland CEO。更离谱的是在Borland的董事会开除Delbert后,他居然还以合约未满
为由,要求Borland支付额外的谴散费,大捞了一票,真是人心不古,工作做得如此
差却还有脸提这种要求,在最后一刻仍然压榨Borland。
在Delphi 4的伤害造成之后,Delphi R&D小组要面对的是如何收拾残局,并且想办法
解决造成的问题。在这个时候Chuck由于把精力放在Borland另外秘密的产品和技术的
研发上,因此无法花太多的时间在Delphi 5的研发上。此时,在Delphi上一向表现良
好的Danny Thorpe便逐渐挑起了Delphi的重负大任。
Danny在Delphi 2之后便有大将之风,开始负责Delphi最低阶的编译器以及RTL(Run…
Time Library)的工作。Danny是美国San Diego大学毕业的,主修就是编译器技术。
在Delphi 4之后,Danny几乎成了RAD部门主要的Architect,负责了RAD大部分产品的
研发工作,甚至又成为Microsoft再次挖角的对象。
对于Danny来说,如何重塑Delphi 5让Delphi从失利中重新站起、找回昔日的光荣便
是一个非常重要的工作。在Delbert Yocam于1999年离开Borland之后不久,现任的
Borland CEO Dale Fuller先生便被Borland邀请加入成为Borland的代理CEO,希望能
够通过Dale Fuller的经验挽救沉沦中的Borland。在Dale入主Borland之后,首先展
开的工作除了整顿Delbert在位时形成的庞大无用的行销部门之外,在产品线方面则
是看好Linux的未来,要求Borland的RAD部门必须开发出Linux下的RAD工具。
在Danny接掌了Delphi主要的开发责任之后,又和Chuck一起再次形成中坚的RAD精英
份子。Chuck主要负责新技术和新构想的实验作品,而Danny则是负责困难的编译技术
以及RTL。由于Turbo/Borland Pascal以及Delphi的最佳化编译器都是Anders
Hejlsberg撰写的,因此当Anders离开Borland之后几乎没有人能够维护编译器程序代
码。Anders都是使用汇编语言(Assembly)撰写复杂的编译器程序代码,而且其品质是
如此之好,不但连Chuck Jazdzewski都赞不绝口,更麻烦的是当时Borland几乎没有
工程师敢随便更动这些程序代码。
因此在Anders Hejlsberg于Delphi 2离开了Borland之后,Borland立刻采取了数项行
动希望能够解决这个〃烫手山芋〃。Borland决定的第一件事情是从Delphi的编译器抽
离大部分最佳化的工作。因为要在Anders的程序代码再继续加入最佳化程序代码是
Borland当时没有把握的事情。另外,由于当时Borland已经决定开发C++Builder,
而C++Builder也需要一个最佳化的编译器,因此,Borland认为如果能够提供一个共
同的后端最佳化编译器,那么Delphi和C++Builder不仅都可以使用,还能够解决没有
人敢修改Delphi编译器的问题。这个决定就是后来Delphi 3以及C++Builder 2推出之
后Borland宣称的〃Delphi和C++Builder可使用共同的后端最佳化编译器〃,这个工作
当时是交由Borland的编译器小组Lee他们负责的。
不过共同的最佳化编译器只解决了一半的问题,对于Object Pascal语言本身的改善
仍然需要能够修改Anders撰写的编译器,那么到底谁能够进行这个工作呢?答案当然
就是另外一个软件天才Danny Thorpe了。Danny在接手Delphi的开发大任之后,就
开始为已经停止开发一段时间的Object Pascal语言本身进行演进的工作。此外,
Danny也开始为Delphi底层的RTL进行改造,并且为Delphi的编译器加入更多最佳化的
功能。
Danny之所以同时在ObjectPascal程序语言、Delphi RTL以及Delphi编译器进行渐进
的改善工作,是有许多因素影响的。首先,当然是为了接下Anders留下的工作,另外
一个原因是在Delphi 3之后,必须再次对于的支持进行强化。最后,是为下在
Delphi 4之后,准备把Delphi移植到Linux上。事实上,Borland在Delphi的R&D小组中曾经
一度准备把Delphi和C++Builder移植到SUN的作业平台上,这是为了因应Delbert和SUN
合并时进行的准备工作。甚至Delphi的R&D小组认为,既然要开发跨平台的Delphi和
C++Builder,那么不如把Apple的Macintosh操作系统也纳入考虑。Delphi的R&D小组
在当时甚至已经列出了开发SUN和Macintosh平台的时间表,但是稍后随着和SUN合并
计划的破灭以及Delbert的下台,这个跨平台的Delphi计划也就暂停了。一直等到Dale
Fuller上台强力要求开发Linux平台的RAD工具之后,Delphi的R&D小组才再次激活跨
平台的计划。
为了支持更好的开发能力,Danny修改了Delphi的编译器,直接支持接口的参
考计数值(Reference Count)的维护工作,以免除开发者繁杂的程序代码,提供了类
似Visual Basic的能力。同时Danny也在Object Pascal程序语言本身中加入接口
(Interface)的机制,让Object Pascal和Java一样对接口程序设计都提供First Class
的支持。Danny并且更进一步,巧妙地结合的接口以及Object Pascal程序语言的接
口,让Delphi的程序员更方便地使用和处理接口。Danny的这些努力,就是Delphi
的使用者在Delphi 3之后逐渐在Object Pascal中看到的Interface机制。对于非常熟
悉Delphi的读者来说,应该可以发现Delphi 1/2中Object Pascal变化的部分很少,
但是从Delphi 3之后,每一新版的Delphi在Object Pascal程序语言本身都有进步,
这些都是Danny所做的努力。
在RTL方面,Danny更是投注了大量的心血,Danny的第一步是去芜存菁。Delphi经过
了三、四年的发展,许多RTL中的程序代码不是过时,就是需要进行最佳化的调整。
因此从Delphi 4开始,Danny便逐渐整理和改善Delphi的RTL,这方面的成果从
Delphi 5之后便逐渐显露出来,Delphi的RTL不但在效率方面有了进步,更提供了愈
来愈多以前版本的Delphi所没有的功能。当然,Danny在Delphi RTL方面最大的贡献
是改善RTL成为跨平台的基础。Danny维护后的Delphi RTL最后也成功地移植到了Linux
平台上,并且克服了许多Windows以及Linux平台差异处的困难。当然,Danny Thorpe
和Chuck Jazdzewski是Kylix得以推出的最重要的功臣之一。为了解决Kylix在Linux
平台上许多的技术问题,后来还引起了Linux开发者社群围攻Danny Thorpe的精彩大
戏,最后导致Danny Thorpe不再管Kylix的开发而全力投入的阵营,这当然又是
另外一个极为精彩的故事了。
对于Danny来说,只有一个最重要的目标,那就是再次擦亮Delphi的光芒,让Delphi 4
的失败能够在下一个版本中一雪前耻,并且把Delphi开发成最棒的RAD开发工具。Danny
的决心也让Delphi R&D小组再次安定了军心,在历经了Delbert错误的决策、Microsoft
大幅的挖角、Delphi 4的失利之后,Danny带领了一些新的Borland工程师展开了艰苦
的工作。
Danny的杰出表现早已深获许多人的赞扬和肯定,也充分地展现了继Anders Hejlsberg
之后,Borland另外视为宝贝的天才的风采。现在,Danny不但早已独当一面,更成为
了Borland 的Architect,负责综合整理Borland未来在上的开发工具。在2002
年Borland的Conference上,Danny正式由Borland的CEO Dale Fuller先生颁发
Borland President Awards大奖,这是继Chuck Jazdzewski、Blake Stone之后,
Borland第3个获得最高殊荣的R&D人员。在Danny接受大奖之时,现场所有的BorCon参
加人员都起立热烈鼓掌,看来,即使在Borland没有颁发这奖项之前,Danny早已被所
有了解他的贡献的人所肯定和钦佩,这只是一个迟来的奖项而已。
我曾在1999年费城的BorCon见到了Danny,并且在澳洲举行的BorCon和他有简短的对
话。Danny的身材不算高大,瘦瘦的,但是非常的温文尔雅。和Danny讲话是一件很舒
服的事情,因为你可以问他许多技术的问题,只要Danny有时间,他会很乐意和你讨
论的。
恭喜Danny!Borland又为PC软件界培养了一个天才和明星。我相信Danny Thorpe也将
成为许多开发者学习的对象,当然也包括我在内。
和对Anders Hejlsberg一样,最后再让我整理一下Danny Thorpe对于Borland和产品
线重要贡献和获得的殊荣,让读者也能对这位值得尊敬的软件开发人员致敬:
〃 负责开发Delphi RTL/编译器困难的工作
〃 改善Object Pascal程序语言,加入现代语言元素Interface
〃 开发出Kylix并且解决Linux平台的臭虫
〃 1999年被Borland内部评选为全Borland最重要的50人之一,是Borland不可放弃的
人才
〃 2001年荣升Borland Architect
〃 负责开发Borland 下一代整合开发工具Galileo
〃 和Chuck Jazdzewski共同开发代号为Charlotte的下一代Web Service程序语言
〃 2002年于BorCon获Borland President's Awards大奖殊荣
对于我来说,Borland孕育了无数的伟大软件工程师,当然有一些人我无缘认识,因
此对于这些人,我只能说是〃久仰大名〃,例如Windows平台的系统和除错大师Matt
Pietrek。但是有一些人却是我认识、甚至有过对话的。这些人每一个都令我折服,
也让我向往这些伟大软件工程师到达的境界,他们是:
〃 Borland C/C++、dBuilder的Framework大将Carl Quinn
〃 不世出的软件天才Anders Hejlsberg
〃 Borland首席科学家Chuck Jazdzewski
〃 Borland RAD核心支柱Danny Thorpe
当然,还有本书稍后会叙及的Java天才,Mr。 Blake Stone。
重回基本的精致之作Delphi 5
1999年8月,距离Delphi 4推出将近一年之后,由Danny领军的Delphi 5终于准备推出
了,这次没有CEO不合理的要求,Borland又投入了适当的资源,再加上Danny和
Delphi R&D小组的全心开发,Delphi的开发步调又回到了以往的轨道。在Danny
Thorpe的细心和坚持之下,Delphi 5在推出时的完成度是非常高的。
注:Borland的每一个产品在推出之前都会进行完成度测试和评估,这和其他的软件
是一样的。每一个产品在完成度到达多少才推出是不一定的,一般来说在85%以上就
是不错的产品,低于80%就推出的产品则等于是推出Beta版的软件,品质一定不好。
当Delphi 5推出到市场之后,其品质果然又受到了Delphi使用者的喜爱,销售数字也
证明Delphi 5已经成功地扫除了Delphi 4时埋下的阴影。再加上当年的JBuilder 3又
迈入了一个全新里程,打造成了一个完全由Java撰写的Java开发工具,因而大获市场
肯定,进而正式为Borland在Java市场带来了空前的胜利和大量的收入。Borland又开
始产生盈余了,Delphi和JBuilder从1999年开始