如果你是一名程序员,你不会不认识Anders Hejlsberg。近日,Anders Hejlsberg***来华,与中国编程爱好者、极客以及创业者畅聊云时代的编程大趋势。51CTO记者也有幸采访了程序员大神Anders Hejlsberg,就编程语言的选择以及编程开发工作等话题,与Anders Hejlsberg进行了深入沟通。
Anders是何许人也?
若你是新晋程序员,也许你还不知道Anders Hejlsberg是何许人也?
他是全球知名的软件开发大师、Delphi和C#之父;
他是Turbo Pascal编译器的主要作者;
他是.Net概念发起人之一;
他是TypeScript开源项目有的重要领导人;
同时,他也是微软卓越工程师和微软技术院士。
Anders Hejlsberg被誉为全世界最***的软件技术人员之一,精通程序语言、编译器技术、开发工具、Framework以及系统架构。Anders Hejlsberg为何能有这么多重要的角色呢?让我们来看看Anders Hejlsberg是如何成为神的!
Anders Hejlsberg 毕业于丹麦科技大学,学的是工程专业,在80年代早期,Anders Hejlsber为MS-DOS和CP/M设计了一个Pascal编译器,也因此进入到Borland公司,Pascal编译器也因此改名为Turbo Pascal。在Borland工作后,Anders Hejlsber设计了Turbo Pascal的替代品Delphi。
Anders Hejlsberg是1996年加入微软公司,据说,是比尔·盖茨亲自参与了挖角行动,给予Anders Hejlsber年薪三百万美金,并许诺其在微软将得到技术上的足够自由和资源支持。
在进入微软后,Anders Hejlsber主要负责Visual J++的研发工作,并在1999年被授予“Distinguished Engineer”(卓越工程师),据说,在微软只有16人获得这样的荣誉。
后来,Anders担任了C#语言的***设计师,同时也是微软.Net战略构架的重要参与决策者。此外,Anders Hejlsberg还带领团队开发出TypeScipt开源编程语言,兼容JavaScript。由于TypeScript是 JavaScript无缝扩展,并且不需要学习新的语言亦或是重写已有的代码库,因此,谷歌的Angular团队宁愿选择TypeScript也不用自己的Dart语言和AtScript,这也让本来两个竞争的公司***次有了合作的交集。
云时代的编程
如今,云计算、移动互联网等新兴技术的快速发展,让IT业界发生了巨大变化,当然也包括编程。Anders Hejlsberg认为,编程语言是一种分布式的应用,并且具有并行、异步等特点,但是编程语言是编程的工艺,它的基础演变是非常慢的,并不是因为有了某些技术,编程语言就会变得更加流行,或者就会出现新的编程语言。
当然,编程语言的流行也需要出现在合适的时间、合适的地点,有时还会有一定的商业因素存在。例如Object-C,以前全世界很少人在用这个语言,毕竟它的开发体验不是很好。但是,因为苹果收购了NeXT公司,将这个语言用在了iOS移动平台的应用开发上,因此,这个语言就变得广泛的流行。
Anders Hejlsberg认为,一个好的编程语言,必须得有自己的特色,并且要恰逢其时,才会获得成功。
编程or管理?
在程序员的职业生涯中,一般都是做了几年的开发工作后,有能力的程序员就开始向管理者的职位发展。像Anders Hejlsberg一样,做了几十年的程序员比较罕见,那么,在编程和管理的两个方向上,程序员该如何选择呢?
Anders Hejlsberg建议,要遵从内心,了解自己所擅长的方面,以及自己内心的需求,然后再做出决定。对于Anders Hejlsberg来说,他更愿意做技术方面的编程工作,并不擅长做管理型的工作。Anders Hejlsberg告诉51CTO记者,“我喜欢跳挑战,我愿意努力推出好的编程语言,使每个程序员更富有效率的工作。”无疑,Anders Hejlsberg的选择是正确的,编程工作让他更加的成功,也成为了一代程序员心目中的神。
那么,在大量编程语言涌现的今天,开发者该如何选择呢?Anders Hejlsberg建议,程序员要把基础知识学习的更加扎实。“首先,程序员要学习的是基础性的知识和相关重要的原则,无论是哪种程序,框架如何,都有其核心的技术,就是面向对象的语言以及函数式的语言。因此,程序员无论使用哪种语言,都必须先了解最基础的知识,之后,就会清楚的认识到应用和各个平台之间的差异。”
后记
如今,传统厂商纷纷开放,微软也不例外。苹果设备上可以使用Office,Windows Azure上可以跑Linux,.Net框架开源,我们看到了微软在逐步走向开放、开源。Anders Hejlsberg认为,微软开源的决定是对的,否则的话,微软就会没有客户。当然,在开放的过程中,微软还需要逐渐摸索学习,更好的倾听客户和社区的声音,满足他们的不同需求。