写点什么

过去五十年最具影响力的十大编程语言及其创造者

  • 2019-08-19
  • 本文字数:3490 字

    阅读完需:约 11 分钟

过去五十年最具影响力的十大编程语言及其创造者

在本文中,我们将一同了解过去五十年以来最具影响力的十种编程语言及其创造者的故事。



软件世界当中存在不少编程语言,而且每一年都有更多后起之秀加入进来。最近一段时间,我们迎来了 Scala、Kotlin、Go 以及 Closure 等新成员,但从历史的角度来看,只有极少数编程语言能够真正得到市场的认可。而生存下来并蓬勃发展的语言,为软件开发行业做出了巨大的贡献,这也是我们整理这份五十年来最具影响力的十大编程语言榜单的原因。


由于编程语言在软件开发领域可谓举足轻重,而且多年来始终是讨论、批评与改进的焦点,因此如果不了解其背后的历史,我们在实际使用时往往会产生不少疑惑。另外,虽然许多朋友都知道 James Gosling 是 Java 之父,不过 Perl、Pascal、Lisp 以及 Erlang 的诞生故事,大部分开发人员恐怕就不甚了然了。正因如此,我才打算将这十种最具人气、最成功的编程语言背后的程序员与设计师,一口气介绍给大家。

十大编程语言及其创造者

以下是我整理的十大编程语言及其创造者榜单。排名不分先后,但由于我个人身为 Java 开发者并从中受益匪浅,因此我毫不犹豫地把它放在了榜单第一位。我知道,很多 C 程序员要跳起来批评我了,毕竟 C 才是最常用的语言。但这份榜单的意义并不在于排名,而是帮助大家了解并记住那些曾为编程语言以及软件开发世界做出巨大贡献的大师。

1) Java — James Gosling

Java 是目前最流行也最成功的编程语言之一。James Arthur Gosling 博士一手创造了 Java,是公认的 Java 编程语言之父。Java 最初由 Sun Microsystems 公司开发及支持,现在则转入甲骨文手中(2010 年 1 月甲骨文收购 Sun Microsystems)。


Java 源自 WORA 计划,即“一次编写,随处运行”。另外,Java 一直强调的平台独立性也是其在企业界取得成功的支柱之一。截至目前,Java 仍是最具人气的应用程序编程语言之一。如果大家对学习 Java 感兴趣,那么The Complete Java Masterclass课程无疑是一个理想的起点。


2) C — Dennis Ritchie

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


3) C++ — Bjarne Stroustrup

Bjarne Stroustrup,1950 年 12 月 30 日出生于丹麦奥胡斯,是一位丹麦计算机科学家,他最大的贡献当然是创造出了目前仍被广泛使用的 C++编程语言。


C++,顾名思义,属于 C 在巅峰时期诞生的下一代语言,具有面向对象的编程功能,这一点也使其成功超越了更强调结构化的 C 语言。C++目前仍是最流行的语言之一,而且在高频事务领域得到广泛应用。另外,它还具有接近本机系统以及面向对象等重要特性。如果大家打算从零开始学习 C++,我推荐 Udemy 上的Beginning C++ Programming — From Beginner to Beyond课程。其中包含良好的理论与实例素材组合。如果大家更倾向于选择免费资源,那么这里还有free C++ courses供您使用。


4) Python — Guido van Rossum

由 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 课程列表。


5) JavaScript — Brendan Eich

如果要问过去五到十年以来,哪种语言人气最高,那答案基本会毫无争议地指向 JavaScript。它已经在 jQuery 等库中占据了客户端脚本领域的绝对优势,而且目前正通过 NodeJS 等库进军服务器端开发。


JavaScript 是一种基于原型的脚本语言,具有动态、弱类型以及一流函数等特性,由 Brendan EIch 负责设计,并由网景通信公司开发完成。JavaScrip 被广泛用于客户端脚本、验证、动画、事件捕捉、表单提交以及其它各类常见任务。几乎在每一个主要网站都能看到它的身影。我强烈建议每一位程序员都学学 JavaScript。Introduction to JavaScript & jQuery课程正是最好的起点。如果大家更倾向选择免费资源,这里也有free JavaScript courses。作为补充,您也可以点击此处查看更多免费的 JavaScript 学习网站。


6) PHP — Rasmus Lerdorf

无论大家多么厌恶 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 课程。


7) Perl — Larry Wall

Perl 是一种高级、通用、具有解释性的动态编程语言。由 Larry Wall 于上世纪八十年代中叶设计并开发,因其出色的文本处理能力而声名鹊起。


目前,Perl 仍是 UNIX 系统上开发报表与脚本的首选语言。Perl 最著名的特性就是强大的大型文本文件解析与处理能力,主要用于 CGI、数据库应用程序、网络编程以及图形编程。Perl 也得到了 IMDB、亚马逊以及 Priceline 等企业的广泛使用。如果大家有意学习 Perl,我个人推荐 Udemy 上的Perl Programming for Beginners课程。对于 Java 开发者,将 Perl 或者 Python 加入自己的技能储备同样很有必要。因为我们可能经常需要利用脚本语言执行临时任务,从而解决维护与支持等实际需求。


8) Ruby — Yukihiro Matsumoto

Ruby 最初由日本的 Yukihiro “Matz” Matsumoto 于上世纪九十年代中叶设计并开发完成。Ruby 的使用体验非常有趣,相信尝试过 Ruby on Rails 的朋友都能理解我说的意思。Ruby 受到 Perl、Ada、Lisp 以及 Smalltalk 的影响,专为高效而愉快的编程体验而设计。Ruby 主要用于 Web 应用程序开发,并得到了 Twitter、Hulu 以及 Groupon 等主要站点的青睐。如果大家打算学习 Ruby,由 Alex Korban 编写、Pluralsight 发布的Ruby Fundamentals课程是您最好的起点。


9) Lisp — John McCarthy

Lisp 代表的是 List Processor,由 John McCarthy 开发完成,也是历史第二久远的高级编程语言。我从未尝试过 Lisp,但据说它算得上 Haskell、Erlang 以及 Scala 等函数编程语言的始祖。Lisp 主要用于 AL 开发以及防空系统。目前没有太好的 Lisp 学习课程,这里我姑且推荐 Nikoloz 的Learn Lisp Programming Basics课程。

10) Pascal — Niklaus Wirth

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


2019-08-19 15:2415346

评论

发布
暂无评论
发现更多内容

软件测试/测试开发丨接口测试Mock实战练习学习笔记

测试人

软件测试 接口测试 Mock

企业如何选型iPaaS平台

RestCloud

ipaas

可测性,到底是什么?

老张

质量保障 质量门禁

云服务器数据安全保障措施看这里!

行云管家

云计算 云安全 云服务器 云数据

为什么说数据安全运维难?有好用的数据安全运维平台吗?

行云管家

数字化 数据安全 数据运维 数据运维安全

入门指导:NGINX 中的 QUIC 网络连接和加密

NGINX开源社区

DNS DDoS QUIC nginx 开源版 HTTP/3

文件传输|如何将100多G文件跨国安全传输到客户手里呢?

镭速

跨国文件传输

软件研发流程、架构规范、技术标准、需求过程等全文档

代码人,代码魂

开发文档

数仓实践丨表扫描时过滤行数过多引起的性能瓶颈问题

华为云开发者联盟

数据库 数据仓库 后端 华为云 华为云开发者联盟

沉浸式LED显示屏的定义和特点

Dylan

LED显示屏 沉浸式体验 沉浸式

一种简化操作日志记录方案 | 京东云技术团队

京东科技开发者

日志 系统 日志记录 企业号11月PK榜

LTV预测算法从开发到上线,浅谈基于奇点云DataSimba的MLOps实践

Geek_2d6073

大模型产业生态有“成功密码”?百度高管2023进博会最新发声

飞桨PaddlePaddle

深度学习 产业生态 大模型

【慢SQL性能优化】 一条SQL的生命周期 | 京东物流技术团队

京东科技开发者

MySQL 数据库 SQL优化 企业号11月PK榜

高性价比AWS Lambda无服务体验

查拉图斯特拉说

Lambda 亚马逊云科技 Amazon Lambda

有效降低数据库存储成本方案与实践 | 京东云技术团队

京东科技开发者

数据库 存储 数据存储 降本 企业号11月PK榜

Macos端音频标签编辑器 Mp3tag激活中文版最新

胖墩儿不胖y

Mac软件 音频标签编辑器

DxO PureRAW for mac(raw照片智能处理工具) 3.7.0激活直装版

mac

windows 苹果mac DxO PureRAW raw智能照片处理工具

一文了解亚马逊云科技最新大语言模型

苏沐

大模型 亚马逊 亚马逊云科技 向量数据库

孵化Web3区块链技术系统开发

l8l259l3365

支持企业微信集成和登录!镭速传输新版本带来多项升级

镭速

镭速

前端计算数字精度丢失问题解决方法记录 | 京东云技术团队

京东科技开发者

前端 企业号11月PK榜 数字精度

搜狐基金使用 MySQL 遇到瓶颈?来看 TDengine 如何解决难题

TDengine

tdengine 时序数据库 搜狐基金

“PO价值最大化”沙盘演练 · 上海 · 第二期

ShineScrum

聊一聊 tcp/ip 在.NET故障分析的重要性

EquatorCoco

TCP TCP/IP TCP协议

关于稳定扩散最详细的介绍

3D建模设计

人工智能 Stable Diffusion AI自动纹理 稳定扩散

淘天Java一面,难度适中!(上篇)

王磊

Java java面试

过去五十年最具影响力的十大编程语言及其创造者_编程语言_javinpaul_InfoQ精选文章