50年来最具影响力的十大编程语言!
作者 | javinpaul
译者 | 馨怡
责编 | 屠敏
出品 | CSDN(ID:CSDNnews)
【导语】“适者生存”的自然法则在应用竞争激烈的编程语言界同样适用,而在数百种编程语言中,相对而言,哪些最具影响力?哪些才是开发者们最值得关注的?
以下为译文:
在软件世界中有各种各样的编程语言,每年还会不断开发新的语言。最近又发布了Scala、Kotlin、Go和Closure,然而事实表明,它们中只有少数能够存活下来。
以下10种编程语言对软件开发领域做出了巨大的贡献,成为50年来最具影响力的编程语言。
编程语言是软件开发世界中最重要的东西,多年来经常受到人们的评论、争议和改进,或许有些使用编程语言的人还不知道它背后的历史。
正如大家都知道James Gosling是Java之父,但是谁创建了Perl、Pascal、Lisp、Erlang,并不是每个开发人员都能回答上来的。因此,我特意收集并分享以下10种最流行和最成功的编程语言以及它们的创造者。
由于我是一名Java开发人员,从Java中获益良多,所以我索性将其放在列表的首位。
可能很多C语言程序员不会同意我的观点,因为C语言是最古老的语言,至今仍被频繁地使用。提前声明一点:这个列表排名不分先后,是为了让我们了解和记住那些在编程语言和软件开发领域做出贡献的编程大师。
一、Java — James Gosling
Java是最流行和最成功的编程语言之一。James Arthur Gosling博士发明了Java,并以Java编程语言之父闻名天下。
Java最初是由Sun Microsystems开发和支持的,现在是由Oracle开发和支持的(Oracle在2010年1月收购了Sun Microsystem)。
Java 的使命是WORA(Write Once Run Anywhere)——“编写即可运行”,Java平台的独立性是在企业领域成功的重要支柱。
到目前为止,它是最流行的应用程序编程语言之一。
二、C — Dennis Ritchie
Dennis MacAlistair Ritchie是一位美国计算机科学家,于1967年到1973年间在AT& T Bell Labs实验室发明了C语言。
至今C语言仍然非常流行,在系统编程中得到了广泛的应用。它比Java更古老,但仍然保持着它的优势。
值得一提的是,Dennis Ritchie还与他的老搭档Ken Thompson一起创建了举世闻名的UNIX操作系统。
如果你把他的受欢迎程度与比尔•盖茨(Bill Gates)或史蒂夫•乔布斯(Steve Jobs)进行比较,你会发现他的名气相差甚远,但他对软件世界的贡献几乎无人能及。
每个程序员都应该知道Dennis Ritchie和他对编程世界的贡献。
三、C++ — Bjarne Stroustrup
Bjarne Stroustrup在1950年12月30日生于丹麦奥尔胡斯,是一名丹麦计算机科学家,以创造和开发c++编程语言而闻名。
顾名思义,c++是在C流行时代作为下一代语言开发的。与偏重结构化的C编程相比,它最显著的编程特性是面向对象。
c++在IT领域得到了广泛的应用,因为它兼容本地系统,并具有面向对象特性。
四、Python — Guido van Rossum
Python由CWI的Guido van Rossum设计,是一种通用的高级编程语言,其设计理念强调代码的可读性。据说它的语法清晰而富有表现力。
在美国Python已经在学术层面上取代了Java。与上个时代不同,学校学生们已经开始用Python而不是C或Java编写程序。(如果您还在犹豫是使用Python还是Java,请参考 this infographic)
Python广泛用于web应用程序开发、软件开发和信息安全。谷歌、雅虎和Spotify等科技巨头已经广泛使用Python。
五、JavaScript — Brendan Eich
如果要问“在过去的五到十年里谁是最大的赢家”,我会说是JavaScript。它能使用jQuery库编写客户端脚本,现在正转向使用NodeJS这样的库进行服务器端开发。
JavaScript由Brendan Eich设计和Netscape Communications Corporation开发,是一种基于原型的动态的弱类型的脚本语言。
JavaScript广泛用于客户端脚本编写、验证、动画、事件捕获、表单提交和其他常见任务。它运行在浏览器上,几乎各大网站都在使用它。
六、PHP — Rasmus Lerdorf
不管你多么不喜欢PHP(Personal Home Page),你都不能忽视这样一个事实: 一半的互联网都运行在这种美妙的互联网语言上。PHP最初是由Rasmus Lerdorf在1995年创建的。
PHP是Microsoft Active Server Pages (ASP)服务器端脚本引擎和Java Server Pages (JSP)的竞争对手,但逐渐被众人所接受,目前已安装在2000多万个Web站点和100多万台Web服务器上。
它也是开源的,被Facebook、Wikipedia、Wordpress和Joomla等互联网巨头使用。PHP广泛用于构建动态web页面和服务器端开发。
七、Perl — Larry Wall
Perl是一种高级、通用、解释型的动态编程语言。Perl由Larry Wall在20世纪80年代中期设计和开发,由于其出色的文本处理能力而声名大噪。
它仍然是用于在UNIX系统上开发报告和脚本的主要语言。Perl以解析和处理大型文本文件而闻名,并用于CGI、数据库应用程序、网络编程和图形编程。
Perl还被IMDB、Amazon和Priceline等公司广泛使用。
对于Java开发人员来说,通常将Perl或Python作为Java的补充,因为需要脚本语言来执行维护等特殊任务。
八、Ruby — Yukihiro Matsumoto
Ruby最初是由日本的Yukihiro Matz Matsumoto在90年代中期设计和开发的。使用Ruby很有趣,如果您尝试过Ruby和Rails,您就会明白我的意思。
Ruby受Perl、Ada、Lisp和Smalltalk的影响,专为高效和有趣的编程而设计。
Ruby主要用于web应用程序开发,主要站点如Twitter、Hulu和Groupon。
如果你想学习Ruby,那么Alex Korban的课程Ruby Fundamentals是最好的起点
https://www.pluralsight.com/courses/ruby-fundamentals?clickid=UXwSpQQ0dxyJRRewUx0Mo3Q2UklVbkWUZ1oS2U0&irgwc=1&mpid=1193463&utm_source=impactradius&utm_medium=digital_affiliate&utm_campaign=1193463&aid=7010a000001xAKZAA2
九、Lisp — John McCarthy
Lisp是List Processor(列表处理器)的缩写,由John McCarthy开发,是第二古老的高级编程语言。
我从未尝试过Lisp,但据说它是Haskell、Erlang或Scala等函数式编程语言之父。它主要用于军事发展和防空系统。学习Lisp的课程并不多,可以从Nikoloz的 Learn Lisp Programming Basics开始。
https://www.udemy.com/course/lisp-programming-language/?LSNPUBID=JVFxdTr9V80&ranEAID=JVFxdTr9V80&ranMID=39197&ranSiteID=JVFxdTr9V80-RVc6H3S56ebwIv12tbqf3w
十、Pascal — Niklaus Wirth
Pascal是一种很有影响力的命令式和过程式编程语言,设计于1968-1969年,由Niklaus Wirth于1970年正式发布,是一种小型而高效的语言,旨在鼓励使用结构化编程和数据结构。与Lisp类似,Pascal是一门古老的语言,所以没有多少Pascal课程,但是如果您想学习Pascal,可以查看Udemy上的 Learn to Program with Pascal。
https://click.linksynergy.com/deeplink?id=JVFxdTr9V80&mid=39197&murl=https%3A%2F%2Fwww.udemy.com%2Flearn-to-program-with-pascal%2F
以上就是十大著名的编程语言和它们的创造者。他们在编程领域做出了巨大的贡献,如果没有他们,就不会我们的今天。
如今,他们中有一些人仍和我们一起继续贡献着,而有些人已经离开我们。让我们永远铭记他们对编程世界的贡献。
原文:
https://medium.com/better-programming/the-10-most-influential-programming-languages-of-the-last-50-years-and-their-creators-6559bb9ce224
(*本文为 AI科技大本营转载文章,转载请联系作者)
◆
福利时刻
◆
入群参与每周抽奖~
扫码添加小助手,回复:大会,加入福利群,参与抽奖送礼!
AI ProCon 2019 邀请到了亚马逊首席科学家@李沐,在大会的前一天(9.5)亲授「深度学习实训营」,通过动手实操,帮助开发者全面了解深度学习的基础知识和开发技巧。还有 9大技术论坛、60+主题分享,百余家企业、千余名开发者共同相约 2019 AI ProCon!5折优惠票抢购中!
推荐阅读
机器学习知识点全攻略
开发者华丽转身的新机会
白话中台战略:中台是个什么鬼?
从原理到代码,轻松深入逻辑回归模型!
只需要支付0.5元就可以撤回交易?这下可坑苦DApp了……
鸿蒙 OS 背后神秘人物曝光!
5G基站功耗,到底有多大?
你点的每个“在看”,我都认真当成了喜欢
相关文章:

【基础篇】DatePickerDialog日期控件的基本使用(一)
项目步骤: 1.首先在Main.xml布局文件中添加一个Button标签,用来点击显示日期控件,Main.xml内容如下: <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android" xmlns:tools"http://sch…

PoPo数据可视化第9期
PoPo数据可视化 聚焦于Web数据可视化与可视化交互领域,发现可视化领域有意思的内容。不想错过可视化领域的精彩内容, 就快快关注吧 :)2018 in the Ito Design Lab(视频内容请关注微信公众号浏览)1900~2018年城市温度异常变化可视化Temperatur…

面向可解释的NLP:北大、哈工大等提出文本分类的生成性解释框架
作者 | Hui Liu, Qingyu Yin, William Yang Wang 译者 | Rachel编辑 | Jane出品 | AI科技大本营(ID: rgznai100)【导语】北大、哈工大和加州大学圣巴巴拉分校在 ACL 2019 的一篇论文中联合提出了一个全新的生成性解释框架,该框架能够对分类策…

pyramid参数
2019独角兽企业重金招聘Python工程师标准>>> 普通参数permission: 该view的访问权限,这个后续会具体介绍。attr: Pyramid默认调用的是view类的__call__函数,如果需要指定调用其他方法,通过attr指定。如attrindex。renderer: 指定构…

Linux下常用的C/C++开源Socket库
1. Linux Socket Programming In C : http://tldp.org/LDP/LG/issue74/tougher.html 2. ACE: http://www.cs.wustl.edu/~schmidt/ACE.html ACE采用ACE_OS适配层屏蔽各种不同的、复杂繁琐的操作系统API。 ACE是一个大型的中间件产品,代码20万行左右&…

前端技术选型的遗憾和经验教训
我是Max,Spectrum的技术联合创始人。Spectrum 是一个面向大型在线社区的开源聊天应用程序,最近被GitHub收购。我们是一个三人团队,主要拥有前端和设计背景,我们在这个项目上工作了近两年时间。 事后看来,以下是我做出的…

时间序列的建模新思路:清华、李飞飞团队等提出强记忆力E3D-LSTM网络
作者 | Yunbo Wang,、Lu Jiang、 Ming-Hsuan Yang、Li-Jia Li、Mingsheng Long、Li Fei-Fei译者 | 凯隐编辑 | Jane出品 | AI科技大本营(ID:rgznai100)【导读】如何对时间序列进行时空建模及特征抽取,是RGB视频预测分类࿰…

了解node.js
转载自http://debuggable.com/posts/understanding-node-js:4bd98440-45e4-4a9a-8ef7-0f7ecbdd56cb 当我向人们介绍node.js时,通常会得到两种反应,一种人马上就能了解,另一种则是非常困惑。 如果你是第二种人,请看一下我对node的解…

VS2013中Image Watch插件的使用(OpenCV)
之前在vs2010中写OpenCV程序时经常用NativeViewer,安装此插件后,在调试代码时,对于cv::Mat变量,CV_TYPE类型为CV_8UC1或CV_8UC3,可以随时查看显示结果。其操作步骤为:1. 从http://sourceforge.net/p…
【spring boot2】第8篇:spring boot 中的 servlet 容器及如何使用war包部署
嵌入式 servlet 容器 在 spring boot 之前的web开发,我们都是把我们的应用部署到 Tomcat 等servelt容器,这些容器一般都会在我们的应用服务器上安装好环境,但是 spring boot 中并不需要外部应用服务器安装这些servlet容器,spring …

让织梦内容页arclist标签的当前文章标题加亮显示
很多人在用织梦做站的时候,会用到在当前栏目页面,给当前栏目标题使用指定样式如标题加亮,或者放个背景图。这是一个很常用和实用的功能,比如在导航页面,标识当前在浏览哪个栏目。如下图: 但是有些时候&…

RHEL6入门系列之九,常用命令2
今天还是继续来学习Linux的基本命令。4、touch命令——建立空文件touch命令用于建立空文件。[rootlocalhost ~]# mkdir /root/test ‘创建目录/root/test[rootlocalhost ~]# touch /root/test/test1.txt ‘在目录/root/test中创建空文件test1.txt[rootlocalhos…

为什么华为200万招聘AI博士,马斯克却推出脑机接口对抗AI?
作者 | 伍杏玲来源 | CSDN(ID:CSDNnews)7 月,华为一则薪资通知刷爆朋友圈:华为给8位博士应届生给予 89.6 万至 201 万的年薪。其中薪资最高的两位博士均研究人工智能相关专业。7 月还有一件大事:马斯克发布…

Artistic Style在windows下的使用(C/C++)
ArtisticStyle是一个开源的源代码格式化工具。主页地址为:http://astyle.sourceforge.net/,它可以应用在C、C、Objective-C、C#、Java等程序语言中。http://astyle.sourceforge.net/astyle.html中为对使用它的详细介绍。从http://sourceforge.net/projec…

ESXi主机与网络中其他主机的网咯数据包捕获
1、tcpdump-uw -i vmk0 -s 1514 host x.x.x.x 指定捕获与某台主机间的网络数据包2、tcpdump -i vmk0 -s 1514 port not 22 and port not 53 在捕获的数据包中,过滤掉指定端口的数据包3、tcpdump-uw -i vmk0 -s 1514 -w traffic.pcap 捕获的数据包保存成PCAP文件&…

Windows下批处理文件(.bat)的使用
批处理(Batch),就是进行批量的处理,英文译文BATCH,批处理文件后缀BAT就取的前三个字母,通常被认为是一种简化的脚本语言,它应用于DOS和Windows系统中。批处理文件是扩展名为.bat或.cmd的文本文件,包含一条或…

金融业加速智能化,解析360金融AI基础架构和应用
传统金融信贷业务中,催收、客服及电销人员占比超过 60%,人员素质参差不齐的现状造成了管理成本过高的问题,由此衍生的客户体验差,也成为困扰金融业的一大通病。 8 月 15 日,在 360金融 AI 媒体开放日上,360…

正则:匹配一个汉字姓名
//汉字姓名正则var reg/^[\u4e00-\u9fa5]{2,}(\.[\u4e00-\u9fa5])?$/console.log(reg.test(张卫健.爱新觉罗))console.log(reg.test(兔子)) 复制代码

NLP命名实体识别开源实战教程 | 深度应用
作者 | 小宋是呢来源 | CSDN博客近几年来,基于神经网络的深度学习方法在计算机视觉、语音识别等领域取得了巨大成功,另外在自然语言处理领域也取得了不少进展。在NLP的关键性基础任务—命名实体识别(Named Entity Recognition,NER…

poj 2063完全背包
题意:给出总资金和投资年份 ,n个股票 给出股票价格和其一年的利润。问如何选择能获得最大利润。 思路:股票可以重复选择,完全背包问题,完全背包也是从01背包衍生而行的,其主要区别在于中间那层循环的次序不…

UTF-8 CPP的使用
UTF-8 CPP是一个简单、小巧、轻量级、跨平台的UTF-8编码字符串库。下面对其使用方法进行简单的介绍:1. 从http://sourceforge.net/projects/utfcpp/下载最新的utf8_v2_3_4.zip源码,将其解压缩;2. 新建一个vs2013 控制台工程TestUTF…
一行js代码识别Selenium+Webdriver及其应对方案
有不少朋友在开发爬虫的过程中喜欢使用Selenium Chromedriver,以为这样就能做到不被网站的反爬虫机制发现。 先不说淘宝这种基于用户行为的反爬虫策略,仅仅是一个普通的小网站,使用一行Javascript代码,就能轻轻松松识别你是否使用…
Android系统移植与调试之-------如何修改Android设备添加重启、飞行模式、静音模式等功能(一)...
1、首先先来看一下修改前后的效果对比图 修改之后的图片 确认重启界面 具体的修改内容在下一篇中具体介绍。 Android系统移植与调试之------->如何修改Android设备添加重启、飞行模式、静音模式等功能(二) 作者:欧阳鹏 欢迎转载…

鸿蒙霸榜GitHub,从最初的Plan B到“取代Android”?
整理 | 郭芮出品 | CSDN(ID:CSDNnews)距离 8 月 9 日鸿蒙(HarmonyOS)正式发布刚刚过去九天,这场由华为领衔的技术风暴,经过十年蛰伏,终于成功引爆全球。与此同时,一个非官…
CODING 最佳实践:快课网研发效能提升之路
快课企业移动学习平台是上海快微网络科技有限公司自主研发的企业级 SaaS 平台,提供移动学习、考试练习、培训管理、知识分享、统计分析等学习和培训功能,为员工、经销商及客户等全价值链合作伙伴提供全面的知识服务。本文将详细介绍快课网的研发团队是如…

基于chyh1990/caffe-compact在windows vs2013上编译caffe步骤
1. 从https://github.com/chyh1990/caffe-compact下载caffe-compact代码; 2. 通过CMake(cmake-gui)生成vs2013 x64 caffe工程; 3. 从https://github.com/google/protobuf下载ProtoBuf,解压缩,编译ProtoBuf…

菜鸟学***——菜鸟的旅程
第一章.菜鸟的旅程作为一个典型的菜鸟,第一次去网吧上网我不知道怎么开机是很正常的事情,但是无论怎么菜怎么无知也无法阻止我对于***的崇拜,我喜欢他们的那种神秘和在我们普通人眼中的无所不能,在网络世界里他们就想鱼…

程序员假冒AI,印度公司竟骗取2亿元投资
作者 | 神经小姐姐来源 | HyperAI超神经(ID:HyperAI)人工智能界有句调侃的话——「有多少智能,就有多少人工」,今天,印度的一家人工智能公司就印证了这句话。据《华尔街日报》报道,印度创业公司…
Windows7上使用VS2013编译Caffe源码(不带GPU支持)步骤
1. 从https://github.com/BVLC/caffe/通过git clone下载caffe源码,master分支,版本号为09868ac:$ git clone https://github.com/BVLC/caffe.git ;2. 先使用cmake-gui构建生成vs2013工程,发现有很多错误,提示缺少各种依…

区块链之比特币的潜在激励
想知道更多区块链技术知识,请百度【链客区块链技术问答社区】链客,有问必答!! 比特币,这个建立在开放P2P(点对点)网络结构之上的货币(文献9),继续享受人们的追…