4月編程語言排行榜:Top20裏的「陌生人」

【51CTO獨家特稿】Tiobe近日發佈了2010年4月的編程語言排行榜,在本期榜單中,C語言反超Java奪得榜首。Tiobe分析稱,在最 近的十年中,C語言一直佔據軟件開發中15%-20%的編程語言使用率;這次重奪王位,並不意味着C語言的增加,而是Java的衰老(詳細分析請參考 51CTO以前的報道《Java,正在老去的王者》)。 另外值得注意的是,Sun的RIA技術——JavaFX腳本語言一舉竄升四位,有望進入前20名。javascript

本期編程榜咱們將視角放在榜單前20名中那些咱們並不熟悉的編程語言,來看一看Top20裏的「陌生人」。java

下面是本期榜單的前20名,請留意標亮的幾門語言。算法

4月編程語言排行榜Top20

Tiobo編程語言排行榜的前20名 幾乎佔據了全球編程語言使用率的70%。長期出如今編程榜前20名裏的語言除了Java、C、PHP等咱們熟悉並常用的語言外,還有一些國內不多應用 的語言,好比這期榜單中的SAS、ABAP、MATLAB和Lua。shell

因爲國內外軟件需求和開發者使用習慣上的差別,這些語言並不爲咱們所熟知,但其在IT界及軟件開發與應用方面的做用不可小視。值得注意的是,這些陌 生的語言之因此能夠長期佔據編程榜重要的位置,要麼是由於其背後有強勢的軟件平臺(廠商)支持,要麼是自身的特色專一併擅長於某一領域。簡 單來講,仍是應用場景和應用需求決定了這些小衆語言的大衆地位數據庫

SAS —— 本期排名13編程

要了解SAS語言,首先須要知道SAS軟件系統。SAS系統是國外著名的統計分析軟件,1966年在美國北卡羅萊納州立大學誕生,通過多年的發展和 完善,目前,SAS系統已經成爲國際統計分析的標準軟件,在各個領域應用普遍。SAS 是一個模塊化、集成化的大型應用軟件系統。它由數十個專用模塊構成,功能包括數據訪問、數據儲存及管理、應用開發、圖形處理、數據分析、報告編制、運籌學 方法、計量經濟學與預測等等。數組

SAS系統的使用依賴其自身帶有的SAS語言。SAS系統的用戶須要通用SAS語言提供的命令、語句和語法來控制系統完成數據管理和分析工做。網絡

簡單來看,SAS語言的功能有點相似數據庫語言(如FoxPro),但又添加了通常高級程序設計語言的許多成分(如分支、 循環、數組),以及專用於數據管理、統計計算的函數。在SAS中,大部分經常使用的複雜數據計算的算法做爲標準過程調用,用戶僅須要指出過程名及其必要的參 數。這一特色使得SAS編程十分簡單,同時大大簡化了SAS數據分析系統的工做。SAS系統的數據管理、報表、圖形、統計分析等功能均可以用SAS語言程 序來調用,只要指定要完成的任務就能夠由SAS系統按照預先設計好的程序去進行。關於SAS語言的詳細介紹請參考:數據管理與分析語言SAS簡介編程語言

ABAP —— 本期排名17ide

ABAP是一門高級商業應用程序設計語言(Advanced Business Application Programming),它是著名商業軟件公司SAP開發的一種編程語言,主要用於SAP系統內部商業應用程序的設計和開發。通常,SAP的商業軟件會 提供一系列的應用解決方案,同時提供一系列的編程接口對這些系統進行二次開發,ABAP就是這種二次開發的主力編程語言。ABAP語言開發的程序經過 SAP開發平臺編譯並應用(依賴)與SAP系統。

ABAP是面嚮對象語言。它支持封裝性和繼承性。封裝性是面向對象的基礎,而繼承性則是創建在封裝性基礎上的重要特性;ABAP的另外一個特色是基於 事件驅動的。

ABAP程序的源代碼包括數據定義和處理快兩個部分。

數據定義:包含整個程序中可見的全局數據類型和數據對象,選擇屏幕元素以及ABAP Objects中自定義的類和接口;

處理塊:是ABAP程序的主要結構單元,定義了程序在不一樣狀態下執行的具體功能,在程序編譯運行過程當中,每一個塊都是一個獨立的實體。ABAP程序 中,數據定義和生命是獨立於任何處理快遞,其餘全部語句都必須隸屬於某個處理塊。

MATLAB —— 本期排名18

MATLAB是一門精於數據分析和數值計算的語言,它最先有美國新墨西哥大學計算機科學系主任Cleve Moler建立,1984年由MathWorks公司正式把MATLAB推向市場。目前,MATLAB已經發展成爲國際控制界的標準高級技術計算語言和交 互式環境;MATLAB在數學類科技應用軟件中在數值計算方面數一數二。它能夠進行矩陣運算、繪製函數和數據、實現算法、建立用戶界面、鏈接其餘編程語言 的程序等,主要應用於工程計算、控制設計、信號處理與通信、圖像處理、信號檢測、金融建模設計與分析等領域。

MATLAB的基本數據單位是矩陣,它的指令表達式與數學、工程中經常使用的形式十分類似,因此用MATLAB來解算問題要比用C,FORTRAN等語 言完成相同的事情簡捷得多。通常,咱們使用MATLAB提供的軟件環境進行MATALB對代碼、文件和數據進行管理,MATLAB的交互式工具能夠按地道 的方式探查、設計和求解問題。MATLAB提供功能強大的數學函數庫,能夠用於線性代數、統計、傅立葉分析、篩選、優化和數值積分等問題求解。此外,各類 函數可將基於MATLAB的算法與外部應用程序和語言,如:C、C++、Fortran、Java、COM等,還能夠與Microsoft Excel集成,開發者能夠直接調用,用戶也能夠將本身編寫的實用程序導入到MATLAB函數庫中方便本身之後調用。

目前,MATLAB普遍應用在信號和圖像處理、通信、控制系統設計、測試和測量、財務建模和分析以及計算生物學等衆多應用領域。

關於MATLAB編程的具體應用請參考:VC++與MATLAB混合編程及其 應用

Lua —— 本期排名20

你可能沒聽過Lua,但你必定聽過(或玩過)魔獸世界,Lua最著名的應用案例就是知名網絡遊戲——魔獸世界。Lua是一門簡潔、小巧、可擴展性極 強的腳本語言。其設計的目的是爲了嵌入應用程序中,爲應用程序提供靈活的擴展和定製功能;Lua最大的特色就是很容易嵌入其它語言中使用。

Lua是一種動態弱類型的程式設計語言。它只提供了很小的一個特性集合來知足不一樣程序的須要,其自身所帶有的數據類型很是少,只提供了數字(缺省是 雙精度浮點數,可配置)、布爾、字符串等幾種簡單的數據類型。Lua只包括一個精簡的核心和最基本的庫。這使得Lua體積小巧,啓動迅速;一個完整的 Lua解釋器不過200k,在目前全部腳本引擎中,Lua的速度是最快的。這一切都決定了Lua是做爲嵌入式腳本的最佳選擇。

Lua用標準C語言編寫並以源代碼形式開放,編譯後僅僅一百餘K,能夠很方便的嵌入別的程式裏。與目前許多功能強大的語言不一樣,Lua自身不提供網 絡、圖形界面和其餘複雜的API庫,這些任務主要由Lua的宿主語言(使用Lua來擴展的語言)來完成。Lua可使用它們,就像是原本就內置的功能一 樣。

目前,不少遊戲開發者使用Lua進行開發,他們使用Lua做爲本身的嵌入式腳本語言,以此來實現可配置性、可擴展性。這其中包括大話西遊II、仙境 傳說、魔獸世界、戰錘40k、博德之門、軒轅劍外傳漢之雲等。

下面是本期榜單前10名近年的趨勢走向,請留意Java的下滑趨勢:

編程榜Top10趨勢走向 
前10名編程語言趨勢走向

其餘編程語言及趨勢

下面是本期榜單第21-50的編程語言排名

 

Position Programming Language Ratings
21 Transact-SQL 0.500%
22 JavaFX Script 0.485%
23 Lisp/Scheme 0.481%
24 Scratch 0.476%
25 D 0.463%
26 Bourne shell 0.437%
27 Scala 0.433%
28 Erlang 0.420%
29 COBOL 0.398%
30 RPG (OS/400) 0.379%
31 S-lang 0.372%
32 Logo 0.361%
33 Ada 0.357%
34 Fortran 0.350%
35 NXT-G 0.321%
36 Tcl/Tk 0.319%
37 Alice 0.317%
38 Forth 0.296%
39 FoxPro/xBase 0.291%
40 Caml/F# 0.280%
41 PowerShell 0.268%
42 CL (OS/400) 0.259%
43 Prolog 0.258%
44 Groovy 0.238%
45 Smalltalk 0.221%
46 VHDL 0.220%
47 J 0.213%
48 C shell 0.198%
49 MAX/MSP 0.196%
50 VBScript 0.186%

下面是第50到100的編程語言排名

AD, Algol, Alpha, APL, Applescript, Awk, Beta, cg, Clean, cT, Dylan, Eiffel, Factor, Falcon, Focus, Haskell, Heron, Icon, IDL, Informix-4GL, Io, LabVIEW, LabWindows/CVI, Lingo, MAD, Maple, Mathematica, ML, Modula-2, Modula-3, MOO, MS-DOS batch, MUMPS, Natural, Occam, Oz, PL/I, Postscript, PowerBuilder, Progress, Q, R, REALbasic, Revolution, REXX, SIGNAL, SPSS, SuperCollider, Verilog, XSLT

編程語言類別

下面給出了編程語言類別的一年變化趨勢,面向對象編程(Object-Oriented Languages)依然佔到編程語言類型的半壁江山。

 

Category Ratings Apr 2010 Delta Apr 2009
Object-Oriented Languages 54.2% -1.7%
Procedural Languages 41.3% +1.4%
Functional Languages 2.7% -0.3%
Logical Languages 1.7% +0.5%



Category Ratings Apr 2010 Delta Apr 2009
Statically Typed Languages 61.4% +4.2%
Dynamically Typed Languages 38.6% -4.2%

動態和靜態語言趨勢走向

動態和靜態語言走勢

【2010年編程語言排行榜回顧】

  1. 2010年 3月編程語言排行榜:Fortran歸來
  2. 2月編程語 言排行榜:Objective-C的詠歎調
  3. 1月編程榜 發佈:Google Go意外奪得年度編程語言
相關文章
相關標籤/搜索