C#之父 Anders Hejlsberg : from Google
1. 少年时教老师学计算机
安德斯·海尔斯伯格(Anders Hejlsberg),1960 年出生于丹麦哥本哈根,Turbo Pascal 编译器的主要作者,Delphi、C# 和 TypeScript 之父,.NET 创立者,是一位伟大的计算机科学家。
高中时 Anders 便就读于丹麦第一批提供计算机的中学。第一次接触编程,便一发不可收拾。那会儿还不是 PC 时代,技术上来讲是小型计算机时代。他用的是一台 HP2100,里面具有 32k 的铁氧体磁芯内存,用 Anders 的话说:“打开它你可以看到小的铁氧体磁芯。我们有一个纸带阅读器,一个电传打印机,后来我们有了一个真正的 CRT 终端。”
HP2100:from Wikipedia
就这样,他第一次学会了用 ALGOL 类语言编写程序。他可能还不知道往后的日子里他将用计算机改变这个世界。有趣的是,头两个星期是老师教会了他,之后是他教会了老师。用他的话说:“必须通过反复试验来自己发现所有这一切。”
2.Delphi的开发
上世纪 80 年代,Anders 为 MS-DOS 和 CP/M 设计了 Pascal 编译器,后来被一个叫 Borland 的公司买下,并改名字为 Turbo Pascal。1986 年他首次认识了 Philippe Kahn(Borland公司创始人),当时 Anders 以汇编语言撰写了 Turbo Pascal 的编译器,而 Philippe 则包办了 Turbo Pascal 的其它部分。
在 Borland 公司,Anders 继续开发 Turbo Pascal,并且创造了一个奇迹:Delphi。当时 Anders 只要有任何想法,Philippe Kahn 都会全力支持。也因为这个重要力量,才有了后来 Delphi 的面世。
Anders Hejlsberg : from Google
3. 比尔·盖茨亲自挖角,Anders开启微软生涯1996 年,对于 Anders 来说不一般,因为这一年他正面临一个抉择:要不要离开工作了 13 年的Borland去微软?从Turbo Pascal、SideKick 再到 Delphi,Anders 创造了 Borland 的传奇。但是自从 Philippe Kahn 离开 Borland 公司, Anders 失去了强有力的支持,就算他已经看到 Java 语言的潜力,可是新任 CEO 却只想不断加强 Delphi 在 IDE 市场的王者地位。
在这之前,微软曾多次想挖走 Anders,可惜都没有成功。这一次比尔·盖茨亲自加入到了挖人的行列中,用 130 万美元年薪外加股票期权和分红,总计超过 300 万美元的薪酬,并许诺 Anders 在微软将得到技术上的足够自由和资源支持。Anders 入职微软势在必行。
当然,据说 Anders 去微软(主要)不是钱的问题,主要原因是当时和 Delphi 开发组的其他成员在修改编译器的问题上发生了争执,他认为自己不再是“不可缺少的人”。
1996 年,在 Delphi 3 发布前 Anders 离开 Borland 去了微软。在他离职后,Borland 把微软告上了法庭,他们认为微软通过不正当手段吸收新成员,他们说 Anders 当时正在开发“Delphi for Java”。不过这场官司以 Borland 胜利而告终,可是 Anders 那时已经开始为微软工作了。
4. 续写技术传奇,创造C#
1996 年来到微软后,Anders 主抓 Visual J++ 的研发工作。试图在 Visual Studio 平台上打造一个基于虚拟机的语言以及一个可以帮助程序员提高生产力的 IDE。这就是 J++ 语言和 VJ++ 开发工具。很快,在新版 Visual Studio 6.0 中引入了 J++,微软的程序员们似乎找到了抵抗 Java 阵营的工具。他在 1999 年被授予“Distinguished Engineer”(卓越工程师)称号。
由于 Anders 对 Java 的一些想法,改进后的 J++ 也吸引了一批 Java 程序员。这也很快导致了微软与 Sun 公司之间的一场政治斗争。当时开发的产品 Visual J++ 6.0 最终使得微软从 Sun 公司的法官那获得了一个专有语言扩展的法院命令。这也让 Anders 意识到在获得另一个伙伴的许可之上构建未来平台将无法为他们或者是他们的使用者服务。只有帮助微软打造自己的技术平台和编程语言,才能摆脱这种限制。这也是构建 .NET 框架的起源。当然,更重要的是一种名为 C# 的语言。
在微软公司把视窗操作系统和软件向网络迁移的新市场战略中,C# 语言是最重要的环节。微软不惜动用了最好的资源。由 Anders 担任了 C# 语言的首席设计师,同时也是微软 .NET 战略构架的重要参与决策者。经过几年时间的埋头苦干,C# 已成为微软反击 Java 语言的最有力武器。
5. 学习C#,让开发更高效
因为 C# 集 C、C++、Java 的优点于一身,同样也是安全、稳定、简单、优雅的。它在继承 C 和 C++ 强大功能的同时去掉了一些它们的复杂特性。C# 综合了 VB 简单的可视化操作和 C++ 的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为 .NET 开发的首选语言。
C# 也使得 C++ 程序员可以高效的开发程序,且因可调用由 C/C++ 编写的本机原生函数,而绝不损失 C/C++ 原有的强大的功能。因为这种继承关系,C# 与 C/C++ 具有极大的相似性,熟悉类似语言的开发者可以很快的转向 C#。
C# 也一直是游戏开发人员的最爱。几乎一半的游戏都是 Unity 3D 制作的。开发人员可以用 C# 构建移动桌面,控制台,电视,VR,AR 和 Web 游戏。简直不要太酷。
另外,随着 .NET Core 的开源,有一部分人开始关注到了 C#。.NET Core 由 微软开发,是适用于 Windows、Linux 和 macOs 操作系统的免费、开源托管的计算机软件框架。目前在 .NET Foundation(一个非营利的开源组织)下进行管理,由 C# 和 C++ 编写,并采用 MIT 协议作为开源协议。
它可以满足跨平台需求,能够在 Windows、Linux 以及 macOS上运行。Linux 和 macOS 上也都支持微软的编译器 Visual Studio Code。
作为一个通用的软件开发框架,.NET Core 是非常友好的,它可以与 .NET Framework,Xamarin 和 Mono 兼容,支持各种 Web 流行框架和库,开发人员还可以用它构建各种软件,比如,Web、桌面、移动、云、游戏、物联网等。用途十分广泛。
所以,也不是势必要你学习 C#,但是如果你要是对它很感兴趣,那不如从这本经典书入门 C# 吧。
☟
长销十余年 C# 入门经典再次更新
(扫一扫,京东购)《C#图解教程(第5版)》
作者:[美] 丹尼尔·索利斯,卡尔·施罗坦博尔
译者:窦衍森,姚琪琳广受赞誉的《C# 图解教程》最新版本。作者在本书中创造了一种全新的可视化叙述方式,以图文并茂的形式、朴实简洁的文字,并辅以大量表格和代码示例,全面、直观地阐述了C# 语言的各种特性。新版本除了精心修订旧版内容外,还全面涵盖了C# 6.0 和 C# 7.0 的新增特性,比如局部函数、throw 表达式、name of 和空条件运算符、using static 指令、异常过滤器,等等。通过本书,读者能够快速、深入地理解 C#,为自己的编程生涯打下良好的基础。
文末畅聊 留言说说这么多位编程语言之父,你最崇拜哪一位? 如果让你给他提点小建议,你想对他说点啥? 精选留言选出 5 位获得赠书。 活动截至2019.12.5。 题图来源: Unsplash by Hal Gatewood推荐阅读:
11月书讯 | 长销十余年,这本书又一次重现江湖 这几本书你买了绝对不会后悔告别无休止的甩锅,开发和运维如何高效合作
参考资料:
1.https://www.welcometothejungle.com/en/articles/anders-hejlsberg-microsoft-career 2.https://www.jianshu.com/p/3bc57cee8f17 3.https://www.jianshu.com/p/926f090c2c23