2011年7月編程語(yǔ)言排行榜:COBOL五角大樓出品
原創(chuàng)【51CTO獨(dú)家特稿】2011年7月Tiobe編程語(yǔ)言排行榜正式發(fā)布。依照慣例,Tiobe在每年的7月,也就是一年過(guò)去一半的時(shí)候會(huì)預(yù)測(cè)當(dāng)年的“年度語(yǔ)言”。參見(jiàn)今年的語(yǔ)言發(fā)展走勢(shì)以及從市場(chǎng)占有率,Tiobe的預(yù)測(cè)目標(biāo)為今年比較火爆的移動(dòng)開(kāi)發(fā)語(yǔ)言:Objective-C和Lua。其中Objective-C相對(duì)2010年增長(zhǎng)了2.68%,亞軍Lua增長(zhǎng)率為1.04%,如果按這個(gè)走勢(shì)下去,2012年的1月,Lua也將和現(xiàn)在的Objective-C一樣成為年度語(yǔ)言熱門(mén)人選。前三甲雖然是Java、C、C++,但是從下圖的榜單中可以看出Objective-C和Lua借蘋(píng)果之勢(shì),使用的人也越來(lái)越多了。
今天51CTO的編程語(yǔ)言排行榜我們要介紹的這款編程語(yǔ)言,相信很多中國(guó)程序員都使用并開(kāi)發(fā)過(guò)。早在上世紀(jì)50年代COBOL語(yǔ)言就已經(jīng)投入使用,并滲透到商業(yè)軟件領(lǐng)域。據(jù)統(tǒng)計(jì),目前有1000億行COBOL代碼被開(kāi)發(fā)出來(lái),并有日益紅火的趨勢(shì)。不少中國(guó)對(duì)日外包就在使用COBOL進(jìn)行開(kāi)發(fā)。
COBOL于1959年5月,五角大樓委托格雷斯•霍波(G.Hopper)博士領(lǐng)導(dǎo)一個(gè)委員會(huì)并由RearAdmiralGraceHopper公司主持開(kāi)發(fā)。最開(kāi)始的目的就是用于海量數(shù)據(jù)信息的處理,雖說(shuō)五角大樓宣稱(chēng)COBOL是用于企業(yè)管理等商業(yè)領(lǐng)域,但這種大量數(shù)據(jù)處理恐怕也是為了軍事目的服務(wù)。比如導(dǎo)彈彈道計(jì)算、情報(bào)數(shù)據(jù)綜合分析等等領(lǐng)域。
COBOL之母格雷斯•霍波(G.Hopper) 美國(guó)海軍少將
COBOL誕生的年代,計(jì)算機(jī)已經(jīng)進(jìn)入第二代。晶體管的大量應(yīng)用,比前一代真空管計(jì)算機(jī)更小、速度更快。但對(duì)于大量數(shù)據(jù)進(jìn)行快速處理的需求,催生了COBOL這樣擅長(zhǎng)數(shù)據(jù)項(xiàng)和輸入、輸出記錄處理,對(duì)大量數(shù)據(jù)文件提供簡(jiǎn)單處理方式的語(yǔ)言。
1959年,美國(guó)國(guó)防部召開(kāi)了一個(gè)有政府機(jī)關(guān)、企業(yè)、計(jì)算機(jī)廠商參加的會(huì)議,大家認(rèn)為有必要設(shè)計(jì)一種數(shù)據(jù)處理專(zhuān)用的語(yǔ)言,這就是著名的數(shù)據(jù)系統(tǒng)語(yǔ)言會(huì)議CODASYL(CongferenceonDataSystemsLanguages)。1959年12月出現(xiàn)了第一個(gè)COBOL語(yǔ)言文本,并于1960年4月正式發(fā)表,因此也被稱(chēng)為COBOL-60。
2009年,COBOL進(jìn)入了第五十個(gè)年頭。
COBOL依舊紅火
40年過(guò)去了,編程語(yǔ)言排行榜上COBOL早已不是最受關(guān)注的語(yǔ)言。比它晚上30多年的Java和C語(yǔ)言正為了榜首爭(zhēng)得不可開(kāi)交。但是在財(cái)會(huì)工作、統(tǒng)計(jì)報(bào)表、計(jì)劃編制、情報(bào)檢索、人事管理等數(shù)據(jù)管理及商業(yè)數(shù)據(jù)處理領(lǐng)域,COBOL依舊紅火。
COBOL掌控全球的錢(qián)袋子?
COBOL主要應(yīng)用在銀行等金融領(lǐng)域,即使現(xiàn)在他們想換到其他類(lèi)型的語(yǔ)言。巨大的遷移成本和風(fēng)險(xiǎn)將讓他們望而卻步,況且現(xiàn)在COBOL還工作得很理想,為什么要更換呢?
COBOL的重要性可以用這句話(huà)來(lái)描述:世界上70%的數(shù)據(jù)都是用COBOL語(yǔ)言處理的,并且90%的ATM事務(wù)處理用的都是COBOL語(yǔ)言。每天在線(xiàn)處理的COBOL事務(wù)有300億次。500強(qiáng)中有492家(包括全部的100強(qiáng))使用了COBOL語(yǔ)言,目前在COBOL方面的投資已經(jīng)超過(guò)3萬(wàn)億美元。
COBOL的技術(shù)特征
下面是COBOL語(yǔ)言的Hallo World代碼,看起來(lái)跟Java等語(yǔ)言不同,完全是純英文語(yǔ)法模式。程序員閱讀COBOL基本不費(fèi)力,就是敲代碼是不是會(huì)比較費(fèi)時(shí)呢?
- * 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.(標(biāo)識(shí)部),主要用來(lái)指定源程序名字,也可以寫(xiě)入其他用作備忘的某些信息(如日期、作者等)。
ENVIRONMENT DIVISION.(環(huán)境部),主要用于指出程序中用到的數(shù)據(jù)文件名與計(jì)算機(jī)系統(tǒng)的設(shè)備的對(duì)應(yīng)關(guān)系,即把某一文件名與一個(gè)外部設(shè)備聯(lián)系起來(lái)。
DATA DIVISION.(數(shù)據(jù)部),程序中所用到的全部數(shù)據(jù)(包括輸入輸出的數(shù)據(jù)和中間數(shù)據(jù))都應(yīng)在數(shù)據(jù)部中說(shuō)明它們的類(lèi)型和所占內(nèi)存情況。
PROCEDURE DIVISION.(過(guò)程部),用來(lái)給出程序要執(zhí)行的指令,使計(jì)算機(jī)產(chǎn)生相應(yīng)的操作,例如進(jìn)行數(shù)學(xué)運(yùn)算。
COBOL語(yǔ)言估計(jì)在未來(lái)很長(zhǎng)一段時(shí)間將不會(huì)過(guò)時(shí),商業(yè)軟件的更新?lián)Q代是比較漫長(zhǎng)的事情。COBOL標(biāo)準(zhǔn)還在不斷地改進(jìn)和完善,最新的標(biāo)準(zhǔn)COBOL2002主體已經(jīng)于2002年12月出版,其他部分還在不斷地完善之中,具體內(nèi)容請(qǐng)參考NCITS和COBOLStandards。#p#
下面是本期編程語(yǔ)言排行榜的其他排名數(shù)據(jù)和趨勢(shì)走向。
前10名編程語(yǔ)言走勢(shì)圖
20到50名語(yǔ)言排行
下面是第50到100的編程語(yǔ)言排名
(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
不同語(yǔ)言的比例
下面給出了編程語(yǔ)言類(lèi)別的一年變化趨勢(shì)
【2011年榜單回顧】
- 2011年6月編程語(yǔ)言排行榜:為孩子創(chuàng)造的語(yǔ)言Scratch
- 2011年5月編程語(yǔ)言排行榜:用MATLAB構(gòu)建宇宙
- 2011年4月編程語(yǔ)言排行榜:告別Smalltalk
- 2011年3月編程語(yǔ)言排行榜:用Ada向人類(lèi)首位程序員致敬
- 2011年2月編程語(yǔ)言排行榜:冰河時(shí)代的Fortran
- 2011年1月編程語(yǔ)言排行榜:Python稱(chēng)霸2010