溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

當(dāng)下主流JVM語(yǔ)言有哪些

發(fā)布時(shí)間:2021-11-30 15:11:55 來(lái)源:億速云 閱讀:302 作者:小新 欄目:編程語(yǔ)言

這篇文章將為大家詳細(xì)講解有關(guān)當(dāng)下主流JVM語(yǔ)言有哪些,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

NetRexx

NetRexx可謂Java領(lǐng)域的腳本語(yǔ)言先驅(qū)者,它的誕生標(biāo)志著開(kāi)發(fā)人員對(duì)Java繁瑣語(yǔ)法的***次反擊。雖然以免費(fèi)形式發(fā)布,但NetRexx的閉源性質(zhì)最終阻礙了它的高歌猛進(jìn)之勢(shì)。人們清醒地意識(shí)到,IBM公司根本沒(méi)有將這一項(xiàng)目繼續(xù)深入發(fā)展或是轉(zhuǎn)向開(kāi)源的意圖。最終,NetRexx應(yīng)用如今已經(jīng)近乎絕跡。

當(dāng)下主流JVM語(yǔ)言有哪些

Jython (Java平臺(tái)上的Python)

作為一款早期開(kāi)源JVM語(yǔ)言,Jython(最初名為‘JPython’)原本立志成為Python搶占JVM環(huán)境的急先鋒。優(yōu)秀的契合效果使得大部分代碼無(wú)需改動(dòng)即可直接運(yùn)行。然而,就在該語(yǔ)言即將大展身手之時(shí),其創(chuàng)始人Jim Hugunin被微軟挖至麾下,他自然也就把工作重點(diǎn)轉(zhuǎn)向Python與.NET環(huán)境的結(jié)合(這就是IronPython項(xiàng)目)。隨著創(chuàng)始人的離去,Jython始終未能恢復(fù)元?dú)?,并在接下?lái)的數(shù)年中寂寂無(wú)聞。直到幾年之前該項(xiàng)目才開(kāi)始重新煥發(fā)生機(jī),然而這時(shí)它的面前已經(jīng)出現(xiàn)了多位相當(dāng)強(qiáng)大的競(jìng)爭(zhēng)對(duì)手。

當(dāng)下主流JVM語(yǔ)言有哪些

Groovy

Groovy最初的定位是JSR(即Java規(guī)范請(qǐng)求),在經(jīng)過(guò)數(shù)年的苦苦掙扎之后,原本的負(fù)責(zé)人也扔下攤子跑去搞其它項(xiàng)目了。而直到法國(guó)開(kāi)發(fā)人員Guillaume Laforge的加入,才讓Groovy重新步入正軌、擁有了規(guī)模龐大且熱情高漲的支持社區(qū),進(jìn)而迸發(fā)出***的耀眼光芒。這是一款與Java本身頗為相近的語(yǔ)言,它的設(shè)計(jì)目的在于為開(kāi)發(fā)者提供一套自助式語(yǔ)法解決方案,在這一點(diǎn)上它無(wú)疑是成功的。它同時(shí)是當(dāng)下碩果僅存的兩種能夠從上市公司(由VMware資助,另一種是Gosu語(yǔ)言)處獲得資助,以支持自身開(kāi)發(fā)團(tuán)隊(duì)運(yùn)營(yíng)的JVM語(yǔ)言之一。在強(qiáng)大經(jīng)濟(jì)后盾的輔助下,Groovy的更新活動(dòng)相當(dāng)頻繁,而且最近一次升級(jí)更是彌補(bǔ)了其長(zhǎng)期以來(lái)的***缺陷:運(yùn)行速度緩慢。

當(dāng)下主流JVM語(yǔ)言有哪些

Scala

Scala嘗試將OO(即面向?qū)ο?與功能范例二者進(jìn)行協(xié)調(diào)或者整合。Scala的基本語(yǔ)法能夠作為Java的替代品直接使用,而其中更多高級(jí)功能則可以用來(lái)編寫功能性代碼。隨著編程人員水平的提升,如今我們已經(jīng)可以方便地將代碼從一套范例遷移至另一套范例(對(duì)于高端Scala開(kāi)發(fā)人員而言,功能性永遠(yuǎn)是優(yōu)先考慮的因素)。但它同時(shí)也存在缺憾,由于入門者與高端開(kāi)發(fā)人員之間的語(yǔ)言理解能力差距過(guò)大,導(dǎo)致很多代碼難以為大眾所讀懂。該語(yǔ)言內(nèi)置一套Scala庫(kù),那些一直以來(lái)令開(kāi)發(fā)人員頭痛不已的傳統(tǒng)并行編程問(wèn)題在這里基本得到了有效解決。至于它的缺點(diǎn),除了有些晦澀的代碼構(gòu)成之外,它所采用的編譯器與本文中其它語(yǔ)言相比在處理速度方面實(shí)在有些孱弱;另外過(guò)去曾出現(xiàn)過(guò)新版本無(wú)法與舊版本相兼容的問(wèn)題。

當(dāng)下主流JVM語(yǔ)言有哪些

JRubyMirah

這兩種語(yǔ)言由同一個(gè)團(tuán)隊(duì)所設(shè)計(jì),二者都試圖將Ruby語(yǔ)言引入JVM環(huán)境,語(yǔ)言特色也都曾經(jīng)發(fā)生過(guò)轉(zhuǎn)變。如今Ruby on Rails框架已經(jīng)可以順利運(yùn)行于JVM之中。Ruby與Java環(huán)境之間的互操作性極為優(yōu)異,而且Ruby Gems與Java庫(kù)的運(yùn)行都稱得上簡(jiǎn)潔高效,執(zhí)行結(jié)果令人贊嘆。

Mirah與JRuby在功能上基本一致,只是與Ruby語(yǔ)言的關(guān)聯(lián)性更弱一些。這就使得開(kāi)發(fā)人員能夠帶著Mirah一個(gè)“JAR文件”走天下,而不必費(fèi)神安裝模擬Ruby環(huán)境所必需的大量軟件包。

當(dāng)下主流JVM語(yǔ)言有哪些

Gosu

由專門從事保險(xiǎn)行業(yè)軟件開(kāi)發(fā)的上市企業(yè)Guidewire所支持的Gosu,具備幾大令人印象深刻的能力。其中最不尋常的功能是創(chuàng)建出新的數(shù)據(jù)類型,并將其作為原生數(shù)據(jù)類型嵌入到語(yǔ)言當(dāng)中。它還允許對(duì)現(xiàn)有類進(jìn)行傻瓜式修整,因此新方案能夠輕松加入當(dāng)前運(yùn)行環(huán)境。

當(dāng)下主流JVM語(yǔ)言有哪些

Fantom

在本文中所提到的所有語(yǔ)言中,F(xiàn)antom可謂***。它不僅能夠生成Java字節(jié)碼,連生成.NET中間代碼與JavaScript代碼也綽綽有余。從這個(gè)角度來(lái)說(shuō),它可以被視為一種通用型語(yǔ)言。它在設(shè)計(jì)上也相當(dāng)用心:所有整數(shù)都是64位,從而消除了大量溢出問(wèn)題;全部多重處理工作只由角色完成,這就有效避免了許多常見(jiàn)問(wèn)題的發(fā)生;而且它所使用的庫(kù)在設(shè)計(jì)之初就能夠支持全套Unicode字符列表及字符串。從許多角度來(lái)看,F(xiàn)antom的設(shè)計(jì)足可獨(dú)占本篇匯總型文章的鰲頭。不過(guò)它所使用的模塊設(shè)計(jì)較為獨(dú)特,在實(shí)際應(yīng)用時(shí)需要一段時(shí)間來(lái)習(xí)慣,并且缺乏良好IDE的支持。

當(dāng)下主流JVM語(yǔ)言有哪些

Clojure

Clojure是對(duì)Lisp在JVM運(yùn)行環(huán)境中的再創(chuàng)造。盡管它自面世至今不過(guò)數(shù)年光景,但由于其精致的語(yǔ)法表達(dá)式、與Java的高度集成化(由于與Java使用同一套規(guī)則,Clojure在字節(jié)碼編譯過(guò)程中可以輕松調(diào)用Java的規(guī)則內(nèi)容)以及使用社區(qū)的熱情支持,Clojure已經(jīng)在開(kāi)發(fā)者群體中獲得了極高的人氣。一些專家甚至預(yù)言,Clojure將成為令函數(shù)式語(yǔ)言成為編程主流的決定性因素(Scala也獲得了相似的評(píng)價(jià))。

當(dāng)下主流JVM語(yǔ)言有哪些

Kotlin

Kotlin是JVM家族中年紀(jì)最小的一位新成員。它從Groovy及Scala等前輩身上繼承了不少優(yōu)秀基因,同時(shí)還加入了一些別出心裁的原創(chuàng)要素。它的設(shè)計(jì)思路是提供同Java一樣快捷的編譯效果,并獲得本地Java二進(jìn)制內(nèi)容的處理速度。這兩大優(yōu)勢(shì)使其從頭一個(gè)發(fā)布版起,就成為開(kāi)發(fā)人員們解決編譯及執(zhí)行速度問(wèn)題的***JVM語(yǔ)言。

關(guān)于“當(dāng)下主流JVM語(yǔ)言有哪些”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

jvm
AI