2010年4月6日 星期二

JAVA霸主地位不再

Bee常去看TIOBE的電腦語言排行。以了解電腦的走向。

這個月(2010/4)出現了令人意外的排名:JAVA不再是第一了。

而第一改為C語言。

不管如何,前二大語言的佔有率仍是沒有其他語言可以威脅的。

只是長期來看,用JAVA吃飯肯定比C來得難。



4 則留言:

  1. 因為雲端當紅,很多system programing 用C....

    [版主回覆04/29/2010 09:34:39]Bee個人覺得是embedded應用將C撐住不掉。而Java則因無新的應用域才會一直掉。Bee
    C的本質為單工,不是很合適於雲端。為了降低入門難度,雲端應用會有新語言爬起來。
    倒是GPGPU用的語言,是C沒錯。GPGPU有紅到可以頂起來,這點有點懷疑,主要是入門不易。不過GPGPU確實助雲端不少力。

    Bee將電腦語言排名視為新科技指標,因為它反應電腦在解決什麼問題。不過這還是一個落後指標啊!

    回覆刪除
  2. 雲端上,google amazon 都是採用java 來當上面的程式語, 當然下面怎麼跑的我們是真的不知道...

    [版主回覆05/01/2010 11:34:21]Java對於雲端,Bee認為還不夠好。因為Java只有解決遠端,但沒有做到並行計算這個部分。
    所以會有新語言吃掉一部分原先Java的應用。

    主流語言長期來看是一定慢慢衰退,除非它改進跟上潮流。

    想當時Bee第一次寫程式的年代,看得到的語言還不多。組合語言也很流行。
    現在組合語言找得到人教就不錯了。

    回覆刪除
  3. JAVA 其實有內建並行計算這個功能
    由其在JAVA 5之後更增加取多新的函數庫(read/write lock, swing worker)
    SCJD這個考試,雖然是3個題目抽一個給你考,但都是多線程有關
    但有關於starvation , race condition, deadlock 這些
    都是要靠寫程式者防止

    [版主回覆05/02/2010 11:58:20]Bee根本沒在用Java,完全忘了它有支援這些功能。
    不過,這個和作業系統支援的多線程一樣,要工程師去注意一堆問題,這樣就是推廣不起來。

    感謝您的指正。

    回覆刪除
  4. 說一句老實話工程師 薪水那麼高就是要做比較多的事
    不然憑什麼拿那麼多的錢

    說到平行處理,其實J2EE 本身後面跑的就是平行處理
    只是application server 幫你處理那些事情
    像web application 同時處理幾萬個用戶這樣....

    [版主回覆05/05/2010 09:41:09]Java和Web應用不是我熟悉的領域。不過還網路的發展確實關係到電腦語言的發展。謝謝您提供這樣的訊息。

    薪水和使用工具不是直接關係,主要還是看解決那一種問題。
    會Java和C的人那麼多,但薪水可能差好幾倍。會有這種差異是特殊領域知識,電腦語言只是實現工具。

    回覆刪除