在本文中,我们将一同了解过去五十年以来最具影响力的十种编程语言及其创造者的故事。
软件世界当中存在不少编程语言,而且每一年都有更多后起之秀加入进来。最近一段时间,我们迎来了 Scala、Kotlin、Go 以及 Closure 等新成员,但从历史的角度来看,只有极少数编程语言能够真正得到市场的认可。而生存下来并蓬勃发展的语言,为软件开发行业做出了巨大的贡献,这也是我们整理这份五十年来最具影响力的十大编程语言榜单的原因。
由于编程语言在软件开发领域可谓举足轻重,而且多年来始终是讨论、批评与改进的焦点,因此如果不了解其背后的历史,我们在实际使用时往往会产生不少疑惑。另外,虽然许多朋友都知道 James Gosling 是 Java 之父,不过 Perl、Pascal、Lisp 以及 Erlang 的诞生故事,大部分开发人员恐怕就不甚了然了。正因如此,我才打算将这十种最具人气、最成功的编程语言背后的程序员与设计师,一口气介绍给大家。
以下是我整理的十大编程语言及其创造者榜单。排名不分先后,但由于我个人身为 Java 开发者并从中受益匪浅,因此我毫不犹豫地把它放在了榜单第一位。我知道,很多 C 程序员要跳起来批评我了,毕竟 C 才是最常用的语言。但这份榜单的意义并不在于排名,而是帮助大家了解并记住那些曾为编程语言以及软件开发世界做出巨大贡献的大师。
Java 是目前最流行也最成功的编程语言之一。James Arthur Gosling 博士一手创造了 Java,是公认的 Java 编程语言之父。 Java 最初由 Sun Microsystems 公司开发及支持,现在则转入甲骨文手中(2010 年 1 月甲骨文收购 Sun Microsystems)。
Java 源自 WORA 计划,即“一次编写,随处运行”。另外,Java 一直强调的平台独立性也是其在企业界取得成功的支柱之一。截至目前,Java 仍是最具人气的应用程序编程语言之一。如果大家对学习 Java 感兴趣,那么 The Complete Java Masterclass 课程无疑是一个理想的起点。
Dennis MacAlistair Ritchie 是一位美国计算机科学家,他于 1967 年至 1973 年间在 AT&T 贝尔实验室创造了 C 语言。C 语言目前仍极具人气并被广泛应用于系统编程。它虽然比 Java 老旧不少,但仍然保持着稳固的市场份额。
顺带一提,Dennis Ritchie 还和他的老同事 Ken Thompson 一道开发出著名的 UNIX 操作系统。当然,Ritchie 在知名度方面无法与 Bill Gates 或者 Steve Jobs 相媲美,但他对于软件世界的贡献则是后面这两位所无法匹敌的。
每一位程序员都应该记住 Dennis Ritchie 的名字,以及他对编程世界做出的巨大贡献。如果各位有意学习 C 语言,那么不妨从 Coursera 上的 Introduction to Programming in C Specialization 课程起步。与其它 Coursera 认证项目一样,所有课程都免费开放,只有认证资质收取费用。另外,如果大家希望了解数据结构,那么我推荐 free Data Structure and Algorithm courses in C 。
Bjarne Stroustrup,1950 年 12 月 30 日出生于丹麦奥胡斯,是一位丹麦计算机科学家,他最大的贡献当然是创造出了目前仍被广泛使用的 C++ 编程语言。
C++ ,顾名思义,属于 C 在巅峰时期诞生的下一代语言,具有面向对象的编程功能,这一点也使其成功超越了更强调结构化的 C 语言。C++ 目前仍是最流行的语言之一,而且在高频事务领域得到广泛应用。另外,它还具有接近本机系统以及面向对象等重要特性。如果大家打算从零开始学习 C++,我推荐 Udemy 上的 Beginning C++ Programming — From Beginner to Beyond 课程。其中包含良好的理论与实例素材组合。如果大家更倾向于选择免费资源,那么这里还有 free C++ courses 供您使用。
由 CWI 研究院的 Guido van Rossum 设计的 Python 语言,是一种通用型高级编程语言,其设计理念强调代码可读性。其语法清晰且极具表现力。在美国,Python 已经在学术层面广泛取代了 Java 的地位。新一代的学生们开始学习使用 Python——而非传统的 Java 或者 C——进行编程。如果大家仍不确定在迈出编程第一步时该选择 Python 还是 Java,那么这份 信息图 可能会对您有所帮助。
Python 被广泛用于 Web 应用程序开发、软件开发以信息安全等领域。Python 也得到了谷歌、雅虎以及 Spotify 等科技巨头的青睐。如果您打算学习 Python,那么 Jose Marcial Portilla 编撰的 The Complete Python 3 Bootcamp 可以说是最好的课程之一。作为其它选择,您也可以 点击此处 查看这份适合初学者以及中级程序员的最佳 Python 课程列表。
如果要问过去五到十年以来,哪种语言人气最高,那答案基本会毫无争议地指向 JavaScript。它已经在 jQuery 等库中占据了客户端脚本领域的绝对优势,而且目前正通过 NodeJS 等库进军服务器端开发。
JavaScript 是一种基于原型的脚本语言,具有动态、弱类型以及一流函数等特性,由 Brendan EIch 负责设计,并由网景通信公司开发完成。JavaScrip 被广泛用于客户端脚本、验证、动画、事件捕捉、表单提交以及其它各类常见任务。几乎在每一个主要网站都能看到它的身影。我强烈建议每一位程序员都学学 JavaScript。 Introduction to JavaScript & jQuery 课程正是最好的起点。如果大家更倾向选择免费资源,这里也有 free JavaScript courses 。作为补充,您也可以 点击此处 查看更多免费的 JavaScript 学习网站。
无论大家多么厌恶 PHP,都不能否认精彩的互联网当中有一半是由这种语言构成的。PHP 最初由 Rasmus Lerdorf 于 1995 年创造完成。PHP 的主要实现目前已经交由 PHP Group 接手,他们也成为 PHP 的正式供应方。
PHP 属于微软 Active Server Pages(ASP)服务器端脚本引擎与其它类似语言(例如 Java Server Pages,简称 JSP)的竞争对手,且最终在对抗当中胜出,目前被安装在超过 2000 万个 Web 站点以及上百万台 Web 服务器当中。
PHP 也是一种开源语言,Facebook、维基百科、Wordpress 以及 Joomla 等互联网巨头目前都在使用。PHP 被广泛用于构建动态网页以及服务器端开发。如果大家打算学习 PHP,互联网上的课程相当丰富,我个人比较推荐 PHP for Beginners。至于免费资源,大家可以 点击此处 获取免费 PHP 与 MySQL 课程。
Perl 是一种高级、通用、具有解释性的动态编程语言。由 Larry Wall 于上世纪八十年代中叶设计并开发,因其出色的文本处理能力而声名鹊起。
目前,Perl 仍是 UNIX 系统上开发报表与脚本的首选语言。Perl 最著名的特性就是强大的大型文本文件解析与处理能力,主要用于 CGI、数据库应用程序、网络编程以及图形编程。Perl 也得到了 IMDB、亚马逊以及 Priceline 等企业的广泛使用。如果大家有意学习 Perl,我个人推荐 Udemy 上的 Perl Programming for Beginners 课程。对于 Java 开发者,将 Perl 或者 Python 加入自己的技能储备同样很有必要。因为我们可能经常需要利用脚本语言执行临时任务,从而解决维护与支持等实际需求。
Ruby 最初由日本的 Yukihiro “Matz” Matsumoto 于上世纪九十年代中叶设计并开发完成。Ruby 的使用体验非常有趣,相信尝试过 Ruby on Rails 的朋友都能理解我说的意思。Ruby 受到 Perl、Ada、Lisp 以及 Smalltalk 的影响,专为高效而愉快的编程体验而设计。Ruby 主要用于 Web 应用程序开发,并得到了 Twitter、Hulu 以及 Groupon 等主要站点的青睐。如果大家打算学习 Ruby,由 Alex Korban 编写、Pluralsight 发布的 Ruby Fundamentals 课程是您最好的起点。
Lisp 代表的是 List Processor,由 John McCarthy 开发完成,也是历史第二久远的高级编程语言。我从未尝试过 Lisp,但据说它算得上 Haskell、Erlang 以及 Scala 等函数编程语言的始祖。Lisp 主要用于 AL 开发以及防空系统。目前没有太好的 Lisp 学习课程,这里我姑且推荐 Nikoloz 的 Learn Lisp Programming Basics 课程。
Pascal 是一种极具影响力的命令式与程序式编程语言,于 1968 年左右开发,由 Niklaus Wirth 于 1970 年推出。这是一种小巧而高效的语言,鼓励开发者采用结构化编程以及数据结构良好的编程实践。与 Lisp 类似,目前还没有多少出色的 Pascal 课程——毕竟这种语言已经相当古老。但如果大家打算学习,我推荐 Udemy 上的 Learn to Program with Pascal 。
好了,到这里我们的十大编程语言及其创造者榜单就汇报完毕了。这些开发者为编程世界带来了巨大的变化。没有他们的贡献,我们的世界也许将完全不同。
原文链接:
The 10 Most Influential Programming Languages of the Last 50 years and Their Creators