自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

7月編程語言排行榜:Java,正在老去的王者

原創(chuàng)
開發(fā)
Java的進(jìn)化的速度在最近幾年已經(jīng)遠(yuǎn)遠(yuǎn)無法追趕日趨復(fù)雜項目需求和苛刻的交付日期。人們開始嘗試各種開源項目以緩解Java在某些方面的不足,而這背后,是Sun和JCP對新需求的麻木和對社區(qū)的漠視,這直接導(dǎo)致Java的更新落后于變化,Java正在新變化新需求中變得緩慢和老態(tài)。

【51CTO獨(dú)家特稿】Tiobe近日發(fā)布了最新一期的編程語言排行榜,在前十名的榜單中,除C#上升一位與上期排名第六的Python交換位置外,其他排名無明顯變化。本期榜單,我們關(guān)注Java的持續(xù)下滑。

51CTO編輯推薦:Java面臨終結(jié) 取代者將是Scala?

7月編程語言排行榜前20名 
編程語言排行榜前20名榜單

王者之路

1990年代,隨著計算機(jī)硬件技術(shù)的發(fā)展和成本的下降,電腦開始在企業(yè)中迅速普及,每個公司都開始自己的信息化之路以節(jié)約成本提升效率;隨后,個人電腦開始在家庭用戶群體得到普及?!暗谌卫顺薄钡念A(yù)言波瀾壯闊的展開并迅速蔓延;互聯(lián)網(wǎng)的發(fā)展將這次信息化革命推向高潮。1995年,市場占有率高達(dá)95%Netspace瀏覽器開始使用一種Java Applet技術(shù)為人們提供炫目而安全的使用體驗(yàn)(當(dāng)時發(fā)布的版本叫HotJava瀏覽器,Netspace與Sun聯(lián)合推出)。這吸引了大批編寫CGI程序的開發(fā)者關(guān)注;漸漸的,Java的各種優(yōu)點(diǎn)被人們挖掘,字節(jié)碼、垃圾回收、更強(qiáng)的面向?qū)ο?,這種基于虛擬機(jī)的語言開始在程序員中迅速傳播并被實(shí)踐到各種類型的項目中。

經(jīng)過幾年的演化和改進(jìn),到2000年,Java已經(jīng)成功超越當(dāng)時的主流語言C和C++;2002年,Java一躍成為采用率最高的編程語言?!耙淮尉帉懙教庍\(yùn)行”的口號使更多企業(yè)級項目的程序員得到解脫,龐大復(fù)雜的項目需求開始告別混亂的結(jié)構(gòu)和錯誤的指針,就像80年代C++的出現(xiàn)一樣,Java使程序員的生產(chǎn)力又一次得到了大幅提升。

一般地,我們可以從開發(fā)工具的豐富和廠商的支持來評判一門語言是否流行。Java的開發(fā)工具形成了激烈的市場競爭,Borland推出了JBuilder,微軟匆忙啟動了Visual J++,IBM開始投資Visual Age for Java(Eclipse前身),Sun則推出了自己的NetBeans IDE。

這時,Java無疑成為了編程語言的王者,他以自己干凈的語法和強(qiáng)大的功能統(tǒng)治著企業(yè)級項目的開發(fā);Sun公司開始被程序員以一家軟件廠商看待并崇拜。

在變化中老去

沒有“銀彈”,沒有哪種語言可以完美適應(yīng)日新月異的IT界,至少Java的進(jìn)化的速度在最近幾年已經(jīng)遠(yuǎn)遠(yuǎn)無法追趕日趨復(fù)雜項目需求和苛刻的交付日期。人們開始嘗試各種開源項目以緩解Java在某些方面的不足,以Hibernate和Spring為代表的框架快速發(fā)展和普及;另一方面,Sun和JCP的各種標(biāo)準(zhǔn)不斷遭到人們的質(zhì)疑,JSF和JPA等官方框架被大多數(shù)開發(fā)者拋在一邊。而這背后,是Sun和JCP對新需求的麻木和對社區(qū)的漠視,這直接導(dǎo)致Java的更新落后于變化,Java正在新變化新需求中變得緩慢和老態(tài)。

Java近年走勢圖
Java近年走勢

Java最近一次讓你興奮的功能更新是什么?是1.4到Java 5.0的版本更新還是新加入的泛型語法?這些都是5年前的事了。面對社區(qū)中的眾多需求,JCP早已無法及時考量和應(yīng)對,Java的腳步在日趨蹣跚;更多的開發(fā)者在考慮項目是否應(yīng)該使用Java或者其他什么語言,總之,要他們解決的問題Java解決起來很麻煩;不滿的情緒開始在社區(qū)中蔓延。

DSL和敏捷

遠(yuǎn)在日本的松本行弘就是這其實(shí)之一,尋找適合自己的編程語言的夢想促使他開發(fā)了Ruby,一種比Perl更強(qiáng)大,比Python更面向?qū)ο蟮恼Z言;這時,關(guān)于程序開發(fā)效率的討論從各個軟件公司的項目小組蔓延到社區(qū),以Tom DeMacro為首的一群人人開始倡導(dǎo)敏捷開發(fā)以提高效率;作為對敏捷宣言的實(shí)踐,DSL(特定領(lǐng)域語言)開始被人們重拾并重視起來?;陟`活的語法,Ruby無疑成為DSL和敏捷的不二選擇。

不久,DHH(DAVID HEINEMEIER HANSSON)推出了基于Ruby編寫框架。隨著Web2.0引領(lǐng)的又一次互聯(lián)網(wǎng)高潮,基于Ruby on Rails的敏捷項目一個又一個的迅速建立并投入使用,人們驚奇的發(fā)現(xiàn)通過簡單的DSL改造,Ruby幾乎可以適應(yīng)任何Web項目。這時,Java陣營也開始躁動不安,Sun甚至雇傭了兩名JRuby團(tuán)隊的核心成員開發(fā)自己的Ruby解釋器以期擁有Ruby的動態(tài)和敏捷。JRuby是一個純Java實(shí)現(xiàn)的Ruby解釋器。通過JRuby,你可以在JVM上直接運(yùn)行Ruby程序,調(diào)用Java的API。

源于Java,超越Java

類似JRuby這種基于JVM的語言還有很多,比如Scala。Java泛型的創(chuàng)造者M(jìn)artin Odersky對為Java創(chuàng)造泛型時遇到的約束性記憶猶新,創(chuàng)建一個超越Java的新語言的念頭由此產(chǎn)生,并最終促成了Scala編程語言。Scala是一種針對JVM將函數(shù)和面向?qū)ο蠹夹g(shù)組合在一起的編程語言,高度的可伸縮性和對Java API的無縫兼容使Scala成為Java程序員解決某些問題的另一種選擇。

同樣基于JVM的語言還有Groovy、Jython等,他們雖然擁有不同的名字,不同的語法和特性,但相同的一點(diǎn)時他們都是基于JVM的語言,并對Java API非常友好。在日趨老態(tài)臃腫的Java之外,他們,為解決不同的問題域和應(yīng)用場景而生;在Java社區(qū)的龐大背影下,這些基于JVM的語言為需求而生,為問題而生,敏捷且充滿活力。

#p#

其他編程語言

以下是排名21到50的編程語言列表,請注意排名32位的Scala和排名47位的Groovy。

Position Programming Language Ratings
21 Objective-C 0.509%
22 ActionScript 0.425%
23 Fortran 0.400%
24 COBOL 0.399%
25 Logo 0.394%
26 Ada 0.394%
27 FoxPro/xBase 0.338%
28 PowerShell 0.327%
29 Scratch 0.274%
30 Transact-SQL 0.271%
31 Prolog 0.243%
32 Scala 0.228%
33 Erlang 0.203%
34 Haskell 0.198%
35 ML 0.196%
36 LabVIEW 0.191%
37 Focus 0.155%
38 Awk 0.153%
39 Smalltalk 0.150%
40 Forth 0.145%
41 Alice 0.142%
42 J 0.133%
43 Tcl/Tk 0.129%
44 JavaFX Script 0.129%
45 Caml/F# 0.118%
46 NXT-G 0.118%
47 Groovy 0.114%
48 APL 0.111%
49 Bourne shell 0.109%
50 CL (OS/400) 0.107%

下面是排名51-100的語言:

ABC, AD, Algol, Alpha, Applescript, Beta, Boo, C shell, cg, Clean, Cobra, cT, Curl, Dylan, Eiffel, Euphoria, Factor, Fan, Icon, IDL, Inform, Io, Lingo, MAD, Magic, Maple, Mathematica, MAX/MSP, MOO, MUMPS, Natural, Oberon, Occam, Oz, PL/I, Postscript, PowerBuilder, Progress, Q, R, Revolution, REXX, S-lang, SIGNAL, SPSS, SuperCollider, VBScript, Verilog, VHDL, XSLT

編程語言類別走勢

Category Ratings July 2009 Delta July 2008
Object-Oriented Languages 54.2% -1.7%
Procedural Languages 41.8% +0.7%
Functional Languages 2.8% +0.7%
Logical Languages 1.1% +0.2%


Category Ratings July 2009 Delta July 2008
Statically Typed Languages 60.2% +1.8%
Dynamically Typed Languages 39.8% -1.8%

編程語言類型走勢
靜態(tài)類型和動態(tài)類型的語言走勢

 

【歷期榜單回顧】

  1. 09年6月編程語言排行榜::JavaScript轉(zhuǎn)正在即
  2. 09年5月編程語言排行榜::C++替代者風(fēng)采不再
  3. 09年4月編程語言排行榜:腳本語言占據(jù)半壁江山
  4. 09年3月編程語言排行榜:Visual Basic與PHP的暗戰(zhàn)
  5. 09年2月編程語言排行榜:商業(yè)編程語言的王者之爭
  6. 09年1月編程語言排行榜:C語言當(dāng)選08年年度編程語言
  7. 12月TIOBE編程語言排行榜 C或C++有望奪得年度語言
  8. 11月TIOBE編程語言排行榜 可視化編程語言日漸流行
  9. 10月TIOBE編程語言排行榜發(fā)布 PowerShell跌落谷底
  10. 9月TIOBE編程語言排行榜發(fā)布 Delphi東山再起
  11. 8月TIOBE編程語言排行榜 Python上升顯著
  12. 7月開發(fā)語言排行榜出爐 PowerShell有望成為年度黑馬
責(zé)任編輯:佚名 來源: 51CTO.com 
相關(guān)推薦

2019-07-23 14:14:59

編程語言JavaPython

2021-07-07 05:42:24

編程語言開發(fā)

2012-07-05 16:59:42

編程語言排行榜

2009-02-18 09:11:22

編程語言排行榜Tiobe

2009-06-09 09:07:06

編程語言排行榜JavaScript

2020-03-07 22:01:58

編程語言JavaPython

2023-06-09 15:39:40

編程語言Python

2019-08-01 15:24:01

編程語言Java微軟

2015-07-13 10:52:15

TIOBE編程語言排行榜

2020-02-14 09:19:12

編程語言JavaPython

2020-08-13 11:55:33

編程語言JavaPython

2021-09-23 10:50:42

編程語言Python排行

2013-07-09 10:58:22

編程語言排行榜語言排行

2015-07-07 10:52:46

RedMonk編程語言

2013-07-30 10:00:36

RedMonk編程語言排行榜

2009-10-05 09:46:12

編程語言排行榜Ruby

2015-07-13 10:43:42

C++編程語言排行

2013-03-11 16:10:20

2013-03-11 16:16:13

2009-11-11 10:35:59

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號