欧易

欧易(OKX)

国内用户最喜爱的合约交易所

火币

火币(HTX )

全球知名的比特币交易所

币安

币安(Binance)

全球用户最多的交易所

计算机编程语言发展史&4月份排行榜

时间:2022-10-09 17:25:39 | 浏览:692

1. 编程语言发展1.1 1940年之前第一个编程语言比现代的计算机还早诞生。首先,这种语言是种编码。于1804年发明的提花织布机(或称甲卡提花织布机),运用打孔卡上的坑洞来代表缝纫织布机的手臂动作,以便自动化产生装饰的图案。爱达·勒芙蕾丝

1. 编程语言发展

1.1 1940年之前

第一个编程语言比现代的计算机还早诞生。首先,这种语言是种编码。

于1804年发明的提花织布机(或称甲卡提花织布机),运用打孔卡上的坑洞来代表缝纫织布机的手臂动作,以便自动化产生装饰的图案。

爱达·勒芙蕾丝在1842年至1843年间花费了九个月,将意大利数学家Luigi Menabrea关于查尔斯·巴贝奇新发表机器分析机的回忆录翻译完成。她于那篇文章后面附加了一个用分析机计算伯努利数方法的细节,被部分历史学家认为是世界上第一个电脑程序。 [2]

Herman Hollerith在观察列车长对乘客票根在特定位置打洞的方式后,意识到他可以把信息编码记载到打孔卡上,随后根据这项发现使用打孔卡来编码并纪录1890年的人口统计资料。

最先出生的编程语言是机器语言

它非常简单。有多简单呢?简单到只用“1”和“0”两个数字就可以进行编程。

优势:计算机能够直接识别,执行速度快

劣势:学习难度大,编程效率低

1.2 1940年代

最早被确认的现代化、电力引导(electrically powered)的计算机约在1940年代被创造出来。程序员在有限的速度及存储器容量限制之下,撰写人工调整(hand tuned)过的汇编语言程序。而且很快就发现到使用汇编语言的这种撰写方式需要花费大量的脑力(intellectual effort)而且很容易出错(error-prone)。

所以直到现在,汇编语言仍能占有一席之地。只是,这一席被挤得越来越没有空间。

康拉德·楚泽于1948年发表了他所设计的Plankalkül编程语言的论文。但是在他有生之年却未能将该语言实现,而他原本的贡献也被其他的发展所孤立。

在这段期间被开发出来的重要语言包括有:

· 1943 - Plankalkül (Konrad Zuse)

· 1943 - ENIAC coding system

· 1949 - C-10

优势:相比于机器语言难度有所降低
劣势:学习难度大,编程效率低

1.3 1950与1960年代

有三个现代编程语言于1950年代被设计出来,这三者所派生的语言直到今日仍旧广泛地被采用,

其中就有集万千宠爱于一身、引无数程序员竞头秃的高级编程语言诞生了。

· Fortran (1955),名称取自"FORmula TRANslator"(公式翻译器),由约翰·巴科斯等人所发明;是世界上第一个被正式采用并流传至今的高级编程语言

· LISP,名称取自"LISt Processor"(枚举处理器),由约翰·麦卡锡等人所发明;

· COBOL,名称取自"COmmon Business Oriented Language"(通用商业导向语言),由被葛丽丝·霍普深刻影响的Short Range Committee所发明。

用人类能够读懂的字符与计算机沟通交流
优势:学习难度大大降低,编程效率大大提高
劣势:计算机无法直接识别,执行速度相对较慢

1.4 1967-1978:确立了基础范型

1960年代晚期至1970年代晚期的期间中,编程语言的发展也有了重大的成果。大多数现在所使用的主要语言范型都是在这段期间中发明的:

Simula,于1960年代晚期由奈加特与Dahl以Algol 60超集合的方式发展,同时也是第一个设计支持面向对象进行开发的编程语言。

·

C,于1969至1973年间由贝尔实验室的研究人员丹尼斯·里奇与肯·汤普逊所开发,是一种早期的系统程序设计语言。

·

·

Smalltalk,于1970年代中期所开发,是一个完全从零开始(ground-up)设计的面向对象编程语言。

·

·

Prolog,于1972年由Colmerauer、Roussel,以及Kowalski所设计,是第一个逻辑程序语言。

·

·

ML,于1973年由罗宾·米尔纳所发明,是一个基于Lisp所建构的多态(polymorphic)类型系统,同时也是静态类型函数编程语言的先驱。

·

这些语言都各自演展出自己的家族分支,现今多数现代编程语言的祖先都可以追溯他们其中至少一个以上。

·

1.5 1980年代:增强、模块、性能

1980年代的编程语言与之前相较显得更为强大。C++合并了面向对象以及系统程序设计。美国政府标准化一种名为Ada的系统编程语言并提供给国防承包商使用。日本以及其他地方运用了大量的资金对采用逻辑编程语言结构的第五代语言进行研究。函数编程语言社区则把焦点转移到标准化ML及Lisp身上。这些活动都不是在开发新的范型,而是在将上个世代发明的构想进一步发扬光大。

然而,在语言设计上有个重大的新趋势,就是研究运用模块或大型组织化的程序单元来进行大型系统的开发

在这段期间被开发出来的重要语言包括有:

· 1980 - Ada

· 1983 - C++ (就像有类别的C)

· 1984 - Common Lisp

· 1985 - Eiffel

· 1986 - Erlang

· 1987 - Perl

· 1988 - Tcl

· 1989 - FL (Backus)

1.6 1990年代:互联网时代

1990年代未见到有什么重大的创新,大多都是以前构想的重组或变化。这段期间主要在推动的哲学是提升程序员的生产力。许多"快速应用程序开发" (RAD) 语言也应运而生,这些语言大多都有相应的集成开发环境、垃圾回收等机制,且大多是先前语言的派生语言。这类型的语言也大多是面向对象的编程语言,包含有Object Pascal、Visual Basic,以及C#。Java则是更加保守的语言,也具备垃圾回收机制。与其他类似语言相比,也受到更多的关注。

在这段期间被开发出来的重要语言包括有:

· 1990 - Haskell

· 1991 - Python

· 1991 - Visual Basic

· 1993 - Ruby

· 1993 - Lua

· 1994 - CLOS (part of ANSI Common Lisp)

· 1995 - Java

· 1995 - Delphi (Object Pascal)

· 1995 - JavaScript

· 1995 - PHP

· 1997 - REBOL

· 1999 - D

1.7 现今的趋势

编程语言持续在学术及企业两个层面中发展进化,目前的一些趋势包含有:

· 在语言中增加安全性与可靠性验证机制:额外的堆栈检查、信息流(information flow)控制,以及静态线程安全。

· 提供模块化的替代机制:混入、委派(en:delegates),以及观点导向。

· 组件导向(component-oriented)软件开发

· 元编程、反射或是访问抽象语法树

· 更重视分布式及移动式的应用。

· 与数据库的集成,包含XML及关系数据库。

· 支持使用Unicode编写程序,所以源代码不会受到ASCII字符集的限制,而可以使用像是非拉丁语系的脚本或延伸标点符号。

· 图形用户界面所使用的XML(XUL、XAML)。

在这段期间被开发出来的重要语言包括有:

· 2001 - C#

· 2001 - Visual Basic .NET

· 2002 - F#

· 2003 - Scala

· 2003 - Factor

· 2006 - Windows PowerShell

· 2007 - Clojure

· 2009 - Go

· 2014 - Swift (编程语言)

2. 编程语言的分类

高级语言是大多数编程者的选择。高级语言主要是相对于汇编语言而言,它并不是特指某一种具体的语言,而是包括了很多编程语言,高级语言所编制的程序不能直接被计算机识别,必须经过转换才能被执行,按转换方式可将它们分为解释型和编译型

·

编译型

·

编译性语言写的程序在被执行之前,需要一个专门的编译过程,把程序编译成为机器语言的文件,比如exe文件,以后要运行的话就不用重新翻译了,直接使用编译的结果就行了(exe文件),因为翻译只做了一次,运行时不需要翻译,所以编译型语言的程序执行效率高。

·

类似于谷歌翻译,一次性翻译完成后可以多次使用

·

常用编译型语言:C、C++、Golang

·

·

解释型

·

解释型语言的程序不需要编译,在运行程序的时候才翻译,每个语句都是执行的时候才翻译。这样解释性语言每执行一次就需要逐行翻译一次,效率比较低。

·

类似于同声传译,说一句翻译一句

·

常用解释型语言:python、perl、php、ruby

·

3. 总结

编译型语言和解释型语言的差异总结为下表:


TIOBE 4月编程语言排行榜出炉

在TIOBE发布的4月编程语言排行榜中,知名数学算法分析语言MATLAB即将跌出前20,目前刚好排在第20名,这是MATLAB在近十年来首次出现在该位置。至于下降原因,TIOBE CEO Paul Jansen分析道,MATLAB通常与MathWorks的Simulink模型结合使用,每半年发布一次,但由于授权费用昂贵,因此其替代品也在飞速追赶,例如排名第一的Python和本月排名从32位上升到26位的Julia。

TOP 20编程语言排名

1-20

TOP 21—50名编程语言

21-50

TOP 51—100名编程语言

以下语言列表表示#51 到#100。由于差异相对较小,下面的编程语言按字母顺序显示:

ABC, Apex, AutoIt, bc, BCPL, Bourne shell, CFML, CL (OS/400), Clipper, CLIPS, Crystal, cT, DCL, Elm, Erlang, EXEC, F#, GML, GNU Octave, Hack, Icon, IDL , Inform, Io, J#, Ladder Logic, LiveCode, LPC, MDX, Mercury, ML, MQL4, MUMPS, NATURAL, Oberon, OCaml, OpenEdge ABL, PostScript, Pure Data, Q, Racket, REXX, Ring, S-PLUS, Scheme、Smalltalk、Snap!、SPARK、Stata、Vala/Genie。


Top 10 编程语言 TIOBE 指数走势(2002-2020)

历史排名(1987-2022)

以下数据来源过去12个月的平均排名:


编程语言名人堂

历届TIOBE年度编程语言榜单

相关资讯

编程:史上最全的计算机编程语言列表来了!你不进来了解一下吗?

计算机编程语言可用于将指令传达给计算机。它们基于某些句法和语义规则,定义了编程语言中每种结构的含义。现在我得到了一个凡是可以找得到的每种编程语言的列表。我将它们分为以下几类:解释型编程语言函数式编程语言编译型编程语言过程式编程语言脚本编程语

八年级数学老师熬夜整理,计算能力弱必练:教材同步计算题训练

记得右上角点击关注,防止丢失,每日更新!很多学生在考试的时候感觉发挥得挺不错的,但是当分数出来时却发现并不是很理想。分析试卷后才发现,很多题目出错的原因不是因为不会,而是因为计算失误导致的,因为这样的原因丢分实在是太可惜了。计算能力弱的问题

计算机编程语言发展史&4月份排行榜

1. 编程语言发展1.1 1940年之前第一个编程语言比现代的计算机还早诞生。首先,这种语言是种编码。于1804年发明的提花织布机(或称甲卡提花织布机),运用打孔卡上的坑洞来代表缝纫织布机的手臂动作,以便自动化产生装饰的图案。爱达·勒芙蕾丝

编程和乐高机器人啥关系、编程启蒙到底怎么做|逃妈说编程(下)

于是快马加鞭地赶出了下篇。 其实本来写完上篇后我脑袋里对下篇的框架已经有了大概的构思。但后来从文章的留言,读者微信群里的讨论,以及大家私下给平台小助手、给我发的微信留言中发现,“咦,原来大家最关心的问题跟我之前的设想还是有点儿出入哦~”。于

少儿编程热,需要冷思考编程培训需要来次“编程”

少儿编程热,需要冷思考(大家谈)在不少城市,少儿编程课外培训日渐火爆。很多人认为,作为数字世界的通用语言,学习编程能有效锻炼孩子的思维能力。但也有人提出问题:受理解力所限,幼儿园阶段就送孩子学编程是否符合教育规律?出于“莫输在起跑线上”的心

计算机编程|C语言简介

过年了,红包是少不了的,大家都收到红包了吗?今天呀,小编也送给你一个大红包,总钱数100元,总共包了10个,先到先得哦~~那你知道微信红包是怎么实现的吗?其实呀,它是对应一个算法的。上面是一个微信抢红包金额随机分布结果,那大家知道它是怎么来

12种常用计算机编程语言说明

在机器的帮助下,我们的需要,想要和需求大量增加,全球市场也是如此,因此全球市场被数字网络或社区所包裹。我们被科技所环绕,被小工具包围 - 所有这些都通过编程或编码加以支持。没有卫星,电视,智能手机,证券交易所或机器学习和人工智能的生活是不

孩子应不应该学编程,编程的优缺点要知道,孩子才能真正学以致用

孩子成长中的每一件事都不是小事,成长是一次没有返航的旅程。家长为了孩子能够长成参天大树,会带孩子学各种各样的知识,少儿编程便成为了很多家长的心头好。对于编程课,你了解多少但是很多家长并不知道孩子适不适合学习编程,也不知道编程是什么?就知道学

少儿编程培训值得吗?业内老师:跟真正编程两码事

少儿编程越来越火,从一线城市到二三线城市,编程培训机构如雨后春笋般涌现。少儿编程培训为什么这么火?家长们的“狂热”究竟值不值得?家长:人工智能是趋势,希望孩子早接触“机器人课程确实挺贵的,一下子就交了1万5左右的套餐费,每次课大概160元左

少儿编程十大培训机构有哪些?少儿编程课程怎么选?课程全面测评

这两年,少儿编程越来越火了,不少地区已将它纳入中小学教育。不少国家的政策将少儿编程以及人工智能编入了教育学习项目,甚至浙江编程是高考选考科目,各位宝妈们都处处欲动,很重视孩子的编程教育。想必很多家长在给孩子选课的路程多少经历了很久,那么小编

C/C++编程笔记:C语言编程知识要点总结!大一C语言知识点(全)

一、C语言程序的构成与C++、Java相比,C语言其实很简单,但却非常重要。因为它是C++、Java的基础。不把C语言基础打扎实,很难成为程序员高手。1、C语言的结构先通过一个简单的例子,把C语言的基础打牢。C语言的结构要掌握以下几点:(1

C/C++,被誉为“最经典的编程语言”,不仅是因为编程入门需要学

1、从C到C++计算机诞生初期,用机器语言或汇编语言编写程序;第一种高级语言FORTRAN诞生于1954年;BASIC语言(1964)是由FORTRAN语言的简化而成的是为初学者设计的小型高级语言;C语言是1972年由美国贝尔实验室的 D.

编程入门:编程语言(Java、C++)先学那个好?

这个问题在入门阶段一直是争议十分大的问题,反正学长每次去网上找新手应该学什么编程语言的时候,就会出现五花八门的推荐,n多语言,n多推荐,搞的新手一会听说这种语言适合新手,于是学习这种语言。一会又有人说xx语言是垃圾、弱爆了,学了也没用,之类

编程入门:如何正确认识编程?除了高薪,我再告诉你一些秘密

假期在家待得怎么样?是不是天天过着衣来伸手饭来张口的日子,当然也时常伴随着妈妈的“嫌弃”和“唠叨”?哈哈~文章来源:博学谷接下来,丫姐跟你说一件丫姐在过年期间发生的有意思的事儿:小侄子:姑姑,你会不会编程?我答:会啊...小侄子:那你教教我

编程语言盘点:2021年程序员五大编程语言!C++不在其中?

选择第一门语言是非常重要的,因为这是搭建基础的开始,自此以后我们会逐渐走进并了解编程世界。但老实说,选择哪一种编程语言并不十分重要,重要的是我们需要掌握它,并用它来提高自己解决问题和开发的能力。此后,要再从一种语言切换到另一种语言就会变得轻

友情链接

网址导航 SEO域名抢注宝宝起名网妈妈知道币圈开封新闻头条网空调品牌网考研培训网本草纲目资讯网比尔盖茨故事网佳贝艾特羊奶粉重庆交友相亲网稻城亚丁游玩攻略龙岩头条新闻网直播平台大全网永州新闻头条网段子笑话精选文淇影迷网长沙交友相亲网葡萄牙旅游网
PHP编程知识网-php开源建站系统、PHP程序员网站开发、php编程工具、php菜鸟教程下载、PHP网络编程教学、php网络编程、php工程师、php菜鸟教程数据库、PHP网站开发、PHP精品源码网站、php程序员入门、php零基础入门教程、php源码搭建网站流程、php从入门到精通第2版、php开发简单网站、php制作网站实例、php网站开发实例教程源代码、php中文网破解版、php中文网。
php编程知识 yoceo.cn ©2022-2028版权所有