Anders Hejlsberg 技术理想架构开发传奇

Anders Hejlsberg(安德斯-海森博格) 坐在自己的办公室,双眼直直的盯着前方。他要做一个决定,决定自己未来的命运和理想。这是1996年一个普通的下午,几个小时前,他刚与比尔-盖茨结束了 一次愉快的午餐,同为软件界的精英,他们相谈甚欢,盖茨给他开出三百万以上的年薪和数万股的微软股票。这是一个诱人的条件,但更重要的是,盖茨许诺他可以 有充分的时间和资源投身自己感兴趣的技术方向。

Anders在犹豫,他是否真的要离开已经工作了十三年的Borland。从Turbo Pascal、SideKick再到Delphi,Borland是Anders辉煌的起点,他在这里成为人们敬仰的软件大师,并一手铸就了 Borland传奇;在Borland,Anders有太多美好的回忆和未完成的理想。

 

                                              Anders Hejlsberg


而,随着1994年Philippe Kahn(Borland公司创始人)的离去,Anders渐渐失去了最强有力的支援;Borland的新任CEO
Delbert
Yocam希望加强Delphi在IDE市场的王者地位,因为Delphi才是Borland最主要的财务来源;但Anders已经看到Java和虚拟机
语言的潜力,与其在已有的产品上徘徊不前,他更想专注于新产品Borland
Java(后来的JBuilder)的研发;Borland的管理层的技术短视和Anders的技术追求显得如此格格不入;Anders回忆那段经历时曾
说“那时,我感觉自己并不是不可缺少的人”。

 

                                     风靡一时的Turbo Pascal

Borland
的内部矛盾很快引起了微软的注意,Anders在开发界的名头和对技术的理解使微软急不可耐,甚至对Borland使用了最直接的攻击。微软人力部门派遣
加长型的大轿车到Borland大门口找Anders吃饭,并开出了年薪百万美元以上的条件;在苦等无应、按捺不住之下,很快就再次联系Anders,这
次给出的条件是两百万美元,但依然没能打动Anders。微软开始思索金钱以外的东西。第三次,比尔-盖茨亲自出马,除了开出三百万的价码,还给
Anders完成技术理想的许诺。

经过短暂的犹豫,Anders完成了自己的决定,这个决定足以像Turbo Pascal和Delphi那样再次振动整个开发界;因为这个决定,促成了VJ++、C#和微软.NET战略的诞生。

Visual J++

1996
年,Anders正式加盟微软,成为Visual
J++和WFC(Windows基础类库)的架构师。他的第一个项目与其在Borland的技术理想相当接近,在微软知名的Visual
Studio平台上打造一个基于虚拟机的语言和像Delphi一样彻底解放程序员生产力的IDE。这就是J++语言和VJ++开发工具。我们知道,编程语
言和IDE的开发相当考验一个架构师的功力,作为用汇编打造Turbo
Pascal和亲手开发Delphi的软件大师(自Anders离开Borland后,Delphi的底层架构在三年内一直无人可以修改),Anders
不负众望,微软很快在新版Visual Studio 6.0版本中引入了J++;微软平台的程序员找到了击败Java阵营的工具。

在相当
一段时间里,J++成为微软抗衡Java的最有力武器;同时,由于Anders对Java的一些想法,改进后的J++甚至吸引了一大批Java程序员。后
来由于微软在Java开发工具授权问题上和Sun公司的纠纷以及Borland公司对微软大张旗鼓的挖角的报复,迫使微软停止了Visual
J++的后续开发。在Borland对微软和Anders个人的起诉书上写有这样一句话:“Anders正在帮助微软开发Delphi for
Java”。

作为Anders在微软的第一个产品,J++曾一度取得成功;但最后的纠纷使Anders意识到,商业环境的变化已经无法再像
当年做Pascal那样随意,想要完成自己的梦想,必须帮助微软打造自己的技术平台和编程语言,而这门语言不是C++,因为他不想受C++标准委员会的限
制;这门语言也不是Java,因为他看到Java不完美的地方和商业纷争;Anders要的,是运行在独立平台上的一门完美语言 。

.NET与C#

VJ++
之后,Anders作为.NET概念的发起人之一,被任命为微软.NET的首席架构师主持开发工作。众所周知,.NET框架最初是个模糊的概念,即使是推
出.NET战略一年之后,开发者依然无法看清.NET的技术愿景。其实,Anders也在不断的思考,从Turbo
Pascal到Delphi再到现在的.NET,所有这一切都是致力于对开发者生产力的解放;但在微软,他要做的是平衡技术理想和商业价值的关系;还好,
比尔盖茨履行了他当年的诺言,Anders可以按照他的想法打造.NET;程序员出身的盖茨相信,好的技术必然会带来好的商业价值。

在经过
不断的反思和讨论之后,Anders确定了.NET未来的走向:一个致力于敏捷软件开发、快速应用开发、平台无关性和网络透明化的软件开发平台。.NET
将是微软为下一个十年对服务器和桌面型软件工程迈出的第一步。它应该包含许多有助于互联网和内部网应用迅捷开发的技术。

这就是我们现在所看
到的.NET,更重要的是,为了实现这一平台,Anders需要一门新的编程语言,它既要像Java一样通过虚拟机实现平台的跨越,还要避免一些开发者普
遍抱怨的Java语言存在的缺点;同时,这门语言的革新将使得程序员可以同时进行Windows应用软件和网络应用软件以及组件和服务的开发。这门语言就
是C#。

                                         .NET已成为微软的基础技术架构

Anders
曾笑称自己“把上世纪末和本世纪初的全部献给了C#”。作为C#的架构师,Anders对其倾注了自己的全部精力。2003年,在Channle
9的一次访谈中,《Java编程思想》的作者Bruce Eckel向Anders证实一段传闻:“我听说C#是一个工程师小组在一个屋子里设计出来的?
”,Anders苦笑作答:“是的。4年来,我们一直呆在这个屋子里。现在,每周一、三、五,我们仍然在这里会面。”

我们可以想象Anders为使C#只允许单一继承,同时保证一个类可以实现多个接口功能的苦苦思索;也可以想象他为C#支持完整反射的反复论证;这一切都是为了他的技术理想,而这个理想自大学时代开发Turbo Pascal时就未曾变过。

现在,我们已经看到了.NET和C#的成功,这不仅体现在每期的编程语言排行榜上,在Windows平台和众多.NET开发的网站上,.NET和C#现在已经无处不在。在Delphi的辉煌过后,Anders正在用自己的理想续写新的技术传奇。

时间: 2024-10-16 03:54:35

Anders Hejlsberg 技术理想架构开发传奇的相关文章

Delphi与C#之父:技术理想架构开发传奇

Delphi与C#之父:技术理想架构开发传奇 来源: 51CTO  发布时间: 2011-01-05 18:10  阅读: 60 次  原文链接   全屏阅读 [收藏]   编辑点评:盖茨给Anders Hejlsberg开出三百万以上的年薪和数万股的微软股票.这是一个诱人的条件,但更重要的是,盖茨许诺他可以有充分的时间和资源投身自己感兴趣的技术方向. Anders Hejlsberg(安德斯-海森博格) 坐在自己的办公室,双眼直直的盯着前方.他要做一个决定,决定自己未来的命运和理想.这是199

[原创].NET 分布式架构开发实战之四 构建从理想和实现之间的桥梁(前篇)

原文:[原创].NET 分布式架构开发实战之四 构建从理想和实现之间的桥梁(前篇) .NET 分布式架构开发实战之四 构建从理想和实现之间的桥梁(前篇) 前言:上一篇文章讲述了一些实现DAL的理论,本篇主要是DAL实现的的初步的尝试.   本篇的主要议题如下: 1. 设计DAL的基本操作 2. 对基本的操作的进一步的思考 3. 查询对象的一些思考   系列文章链接:  [原创].NET 分布式架构开发实战之一 故事起源 [原创].NET 分布式架构开发实战之二 草稿设计 [原创].NET 分布式

一起谈.NET技术,.NET 分布式架构开发实战之三 数据访问深入一点的思考

前言: 首先,感谢朋友们对文章的支持,感谢大家,希望本系列的文章能够真正的对大家起到一点帮助的作用.再次感谢大家. 大家也许想问,什么时候出代码,代码一定会出的,我不想一上来就开始抛出一大堆的代码,然后讲解,架构的设计在思考的过程,思考到了,代码也就水到渠成了. 上篇文章讲述在设计之初,Richard所画出的一些草图,本篇对之前的草图做了进一步的思考. 本篇的议题如下: 1.草图的一些问题在哪里 2.重审之前项目中数据层的问题 3.思维的一点突破 4.回首再看数据访问层 1.草图的一些问题在哪里

一起谈.NET技术,.NET分布式架构开发实战之一 故事起源

前言: 本系列文章主要讲述一个实实在在的项目开发的过程,主要包含:提出问题,解决问题,架构设计和各个逻辑层的实现以及新问题的出现和代码的重构.本系列文章以故事的形式展开,而且文章列举的很多项目的名称,大家也不用太关心,很多都是虚拟的. 本篇主要讲述项目的一些背景 新人Richard被分配到了一个企业自动化信息管理项目组--Automation Information Management Project(后面简称AIM),当Richard进入项目组的时候,这个项目已经开始了,项目的架构也已经在两

一起谈.NET技术,.NET 分布式架构开发实战之二 草稿设计

前言: 本篇之所以称为草稿设计,是因为设计的都是在纸上完成的.反映了一个思考的过程. 本篇的议题如下: 1) 第一个数据层草图的提出 2) 对数据访问层的思考 3) 第二个数据层草图的提出 1.数据层草图的提出 Richard开始着手设计,一开始他没有就立刻在自己的计算机开始敲代码.而且采用笔+纸开始构思. 因为他认为:写程序不是什么时候都得上机,脑子里面想什么的才是最重要的,往往很多时候,在设计程序时,首先在头脑中就已经把整个功能已经实现了,甚至代码的详细编写都已经在头脑中走了一遍,并且在头脑

.NET 分布式架构开发实战之四 构建从理想和实现之间的桥梁(前篇)

前言: 上一篇文章讲述了一些实现DAL的理论,本篇主要是DAL实现的的初步的尝试. 本篇的主要议题如下: 1) 设计DAL的基本操作 2) 对基本的操作的进一步的思考 3) 查询对象的一些思考 1. 设计DAL的基本操作 Richard认为:在设计一个架构或者Framework的时候,有几点很重要: a. 总体把握的能力. b. 抽象的能力. c. 分析的能力 首先,从总体上来看,Richard认为DAL中最基本,而且最容易想到的方法就是CRUD(Create, Read, Update, De

C#首席设计师Anders Hejlsberg专访(一)

设计 C#首席设计师Anders Hejlsberg专访 作者:John Osborn 译者:荣 耀 [译序:精彩技术,不容错过!限于时间和能力,译文倘有讹误,当以英文原版为准.] 7月,O'Reilly 编辑John Osborn参加了微软职业开发者会议.在此,他对著名的工程师.微软.Net框架设计师.C#程序语言首席设计师Anders Hejlsberg进行了采访.Anders Hejlsberg因设计PC上最早的语言之一-Turbo Pascal而出名.他把Turbo Pascal授权给B

C#首席设计师Anders Hejlsberg专访(1)转

设计 作者:John Osborn 译者:荣 耀 [译序:精彩技术,不容错过!限于时间和能力,译文倘有讹误,当以英文原版为准.] 7月,O'Reilly 编辑John Osborn参加了微软职业开发者会议.在此,他对著名的工程师.微软.Net框架设计师.C#程序语言首席设计师Anders Hejlsberg进行了采访.Anders Hejlsberg因设计PC上最早的语言之一-Turbo Pascal而出名.他把Turbo Pascal授权给Borland公司,后又率队开发了Delphi-一个极

[原创].NET 分布式架构开发实战之一 故事起源

原文:[原创].NET 分布式架构开发实战之一 故事起源 .NET 分布式架构开发实战之一 故事起源   前言:本系列文章主要讲述一个实实在在的项目开发的过程,主要包含:提出问题,解决问题,架构设计和各个逻辑层的实现以及新问题的出现和代码的重构.本系列文章以故事的形式展开,而且文章列举的很多项目的名称,大家也不用太关心,很多都是虚拟的.   系列文章链接:  [原创].NET 分布式架构开发实战之一 故事起源 [原创].NET 分布式架构开发实战之二 草稿设计 [原创].NET 分布式架构开发实