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