写点什么

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

  • 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:2415321

评论

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

如何优雅地解决平台字体适应问题

编程三昧

CSS 前端开发 HTML5, CSS3 1月月更

11张图深入理解分布式锁原理

慕枫技术笔记

微服务 后端 1月月更

Microchip宣布标准非混合型宇航级电源转换器系列 已新增28伏输入耐辐射选项

Geek_2d6073

知名身份安全厂商九州云腾加入龙蜥社区

OpenAnolis小助手

Linux 开源 互联网

对GO切片的理解

CRMEB

模块 6 作业

miliving

云智慧智能研究院:2022年智能运维发展八大趋势

云智慧AIOps社区

趋势 AIOPS 智能运维 云智慧 运维发展

openLooKeng | Oracle update和delete支持简介及实现

openLooKeng

MyBatis3源码解析(1)探索准备

Java mybatis

ReactNative进阶(三十七):应用 SectionList 实现分组列表

No Silver Bullet

1月月更 ReactNative sectionList

Python Qt GUI设计:做一款串口调试助手(实战篇—1)

不脱发的程序猿

PyQt Python Qt Python Qt GUI设计 串口调试助手

区块链赋能民生“第一单”:200多套房源试水,“链宜租”租房系统上线

CECBC

🏆【Alibaba微服务技术系列】「Dubbo3.0技术专题」(1)Dubbo3新特性概览的介绍说明

洛神灬殇

dubbo Dubbo3 Alibaba技术 1月日更 Apache alibaba

你必须知道的Java17新特性-密封类(Sealed Classes)

蜜糖的代码注释

Java 开发 后端开发

基于OpenMLDB v0.4.0快速搭建全流程线上AI应用

第四范式开发者社区

人工智能 机器学习 OpenMLDB 特征平台

AI+遥感:释放每个像元价值

百度大脑

人工智能 AI

虎虎生威新春大吉,2月更文挑战来袭!

InfoQ写作社区官方

2月月更 热门活动

Spark合并Iceberg小文件内存溢出问题定位和解决方案

漫长的白日梦

spark iceberg 小文件

openLooKeng基于选择率的动态过滤优化

openLooKeng

大数据

(1-23/23)Transformer依然很强

mtfelix

300天创作 2022Y300P

记 服务 内存飙升压测 - 分析总结

常清静

压测分析 内存问题 排查工具

openLooKeng1.5.0新版本正式上线

openLooKeng

【架构师训练营】模块六作业

樰巳-堕~Horry

架构实战营 「架构实战营」

实时渲染大赛太卷了!来看大佬提前交卷的优秀参赛作品

3DCAT实时渲染

3D 实时渲染

开源机器学习数据库OpenMLDB v0.4.0产品介绍

第四范式开发者社区

人工智能 机器学习 大数据 OpenMLDB

记线上服务 cpu 爆表 问题解决

常清静

性能优化 压测分析 CPU问题

一文聊透Netty核心引擎Reactor的运转架构

bin的技术小屋

网络编程 nio 中间件 jdk8 netty

模块六

撿破爛ぃ

架构训练营

左手2021, 右手2022 | 社区征文

soolaugust

技术 云原生 新春征文

Go 语言快速入门指南:Go 函数

宇宙之一粟

函数 Go 语言 1月月更

ABAP 和 Java 里的单例模式攻击

汪子熙

Java abap 1月月更

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