今天51CTO的编程语言排行榜我们要介绍的这款编程语言,相信很多中国程序员都使用并开发过。早在上世纪50年代COBOL语言就已经投入使用,并渗透到商业软件领域。据统计,目前有1000亿行COBOL代码被开发出来,并有日益红火的趋势。不少中国对日外包就在使用COBOL进行开发。
COBOL于1959年5月,五角大楼委托格雷斯•霍波(G.Hopper)博士领导一个委员会并由RearAdmiralGraceHopper公司主持开发。最开始的目的就是用于海量数据信息的处理,虽说五角大楼宣称COBOL是用于企业管理等商业领域,但这种大量数据处理恐怕也是为了军事目的服务。比如导弹弹道计算、情报数据综合分析等等领域。
COBOL之母格雷斯•霍波(G.Hopper) 美国海军少将
COBOL诞生的年代,计算机已经进入第二代。晶体管的大量应用,比前一代真空管计算机更小、速度更快。但对于大量数据进行快速处理的需求,催生了COBOL这样擅长数据项和输入、输出记录处理,对大量数据文件提供简单处理方式的语言。
1959年,美国国防部召开了一个有政府机关、企业、计算机厂商参加的会议,大家认为有必要设计一种数据处理专用的语言,这就是著名的数据系统语言会议CODASYL(CongferenceonDataSystemsLanguages)。1959年12月出现了第一个COBOL语言文本,并于1960年4月正式发表,因此也被称为COBOL-60。
2009年,COBOL进入了第五十个年头。
COBOL依旧红火
40年过去了,编程语言排行榜上COBOL早已不是最受关注的语言。比它晚上30多年的Java和C语言正为了榜首争得不可开交。但是在财会工作、统计报表、计划编制、情报检索、人事管理等数据管理及商业数据处理领域,COBOL依旧红火。
COBOL掌控全球的钱袋子?
COBOL主要应用在银行等金融领域,即使现在他们想换到其他类型的语言。巨大的迁移成本和风险将让他们望而却步,况且现在COBOL还工作得很理想,为什么要更换呢?
COBOL的重要性可以用这句话来描述:世界上70%的数据都是用COBOL语言处理的,并且90%的ATM事务处理用的都是COBOL语言。每天在线处理的COBOL事务有300亿次。500强中有492家(包括全部的100强)使用了COBOL语言,目前在COBOL方面的投资已经超过3万亿美元。
COBOL的技术特征
下面是COBOL语言的Hallo World代码,看起来跟Java等语言不同,完全是纯英文语法模式。程序员阅读COBOL基本不费力,就是敲代码是不是会比较费时呢?
- * Hello World in Cobol
- *****************************
- IDENTIFICATION DIVISION.
- PROGRAM-ID. HELLO.
- ENVIRONMENT DIVISION.
- DATA DIVISION.
- PROCEDURE DIVISION.
- MAIN SECTION.
- DISPLAY "Hello World!"
- STOP RUN.
- ****************************
从上面的COBOL代码,我们可以看出COBOL程序由4部(DIVISION)组成:
IDENTIFICATION DIVISION.(标识部),主要用来指定源程序名字,也可以写入其他用作备忘的某些信息(如日期、作者等)。
ENVIRONMENT DIVISION.(环境部),主要用于指出程序中用到的数据文件名与计算机系统的设备的对应关系,即把某一文件名与一个外部设备联系起来。
DATA DIVISION.(数据部),程序中所用到的全部数据(包括输入输出的数据和中间数据)都应在数据部中说明它们的类型和所占内存情况。
PROCEDURE DIVISION.(过程部),用来给出程序要执行的指令,使计算机产生相应的操作,例如进行数学运算。
COBOL语言估计在未来很长一段时间将不会过时,商业软件的更新换代是比较漫长的事情。COBOL标准还在不断地改进和完善,最新的标准COBOL2002主体已经于2002年12月出版,其他部分还在不断地完善之中,具体内容请参考NCITS和COBOLStandards。
下面是本期编程语言排行榜的其他排名数据和趋势走向。
前10名编程语言走势图
20到50名语言排行
下面是第50到100的编程语言排名
(Visual) FoxPro, 4th Dimension/4D, ABC,Algol, Arc, ATLAS, Avenue, Awk, Bash, bc, BETA, Boo, Bourne shell,CFML, cg, CL (OS/400), Cobra, cT, Dylan, Eiffel, Factor, Groovy,Inform, Io, J, JScript.NET, Korn shell, LabVIEW, Ladder Logic, MAD,Magic, Maple, Mercury, Monkey, MOO, MUMPS, Oberon, OpenCL, Oz, PILOT,PowerShell, Prolog, Revolution, S, SIGNAL, Standard ML, Tcl, TOM,VBScript, VHDL
不同语言的比例
下面给出了编程语言类别的一年变化趋势