云計算時代最具潛力的12種編程語言 |
發(fā)布時間: 2012/8/11 10:09:02 |
我們需要新的編程語言?你可能認為并不需要,但是如果你去了解最近的趨勢,你可能會改變你的想法。為什么Google采用GO和DART兩種編程語言?為什么IBM、Cray、Red Hat分別創(chuàng)造了X10、Chapel和Ceylon三種語言?
未來,這10種編程語言(DART、Ceylon、GO、F#、OPA、Fantom、Zimbu、X10、Haxe、Chapel)是否能否撼動IT。新的編程語言是為了滿足某些人的創(chuàng)作沖動還是新編程方式的技術(shù)演進? 回顧歷史 如果你回頭看看,我們可以看出新語言的爆發(fā)將歷史分為3個時期,每個時期都鏈接到技術(shù)演進的臨界點。 圖中時間點以外的還有其他重要語言:(1)Pascal – 1970、(2)C – 1972、(3)Prolog – 1972、(4)Smalltalk – 1972、(5)Erlang – 1986、(6)Perl – 1987、(7)C# 云計算是否會用到這些語言?如果你分析這些新語言背后的故事,你會看到一個新興的共同主題。 1.分布式/并行計算 可用于并行計算的編程語言(Cray的Chapel、IBM的X10)、并發(fā)編程(Clojure,F(xiàn)antom,Go)和完整云棧單語言(Opa)。 由于云計算所有模式是將任務分發(fā)跨越不同地域的多個CPU并行或同時運行,所以現(xiàn)今的編程語言都不是很適合。 2.多范式編程 支持面向?qū)ο蠛秃瘮?shù)式編程語言(Clojure、F#、Fantom、Scala),相對于并行化程序要簡單,而純函數(shù)式語言看來并不是十分成功。因此,需要嘗試多范式編程語言。 3.多平臺編程 多平臺編程語言不僅可在JVM和CLR實施(Clojure、Fantom、Scala),還可以在其他幾個平臺(Clojure & Fantom on JavaScript engine、Scala on Android、Haxe on several platforms)。這事我們幾十年來一直追逐的夢想,因此這就是創(chuàng)建跨平臺語言的最好理由。 4.規(guī);幊 可讀性、模塊化(Ceylon)、編譯速度(Go、Zimbu)、適合大型團隊(Scala)、Meta-programmability(Ceylon、Scala)和簡潔(Scala、Zimbu)是構(gòu)建大型應用程序的編程語言的特性。 云計算提供了幾乎無限的計算能力,這使得我們可以構(gòu)建更大規(guī)模、更復雜的應用。當然構(gòu)建大型應用需要大型團隊和易于維護的代碼。因此創(chuàng)建大型應用程序的編程語言勢在必行。 5.客戶端編程 替代JavaScript的DART、客戶端和服務器端相同的語言(Naxe、Opa、Zimbu)自然有自己特有的優(yōu)勢。 云計算需要客戶端代碼無縫的運行在多個客戶端設備上,雖然JavaScript已經(jīng)成為了一個標準,但沒有人喜歡它。因此,需要構(gòu)建比JavaScript更好的并適用于多客戶端平臺的語言。 12種語言快速預覽 12種語言是按照A-Z進行排序的,有趣的是這12種語言都是遵循某種開源許可之下(圖表中不包括HTML5,因為從嚴格意義上它還不是一個新語言,同時也排除了Node.js,因為它僅僅是服務器端JavaScript引擎)。 本文出自:億恩科技【www.allwellnessguide.com】 |