电竞比分网-中国电竞赛事及体育赛事平台

分享

JAVA開發(fā):五大基于JVM的腳本語言

 jacklopy 2011-06-20

JAVA開發(fā):五大基于JVM的腳本語言

2011年06月20日18:33 來源:酷殼 作者:陳皓 編輯:胡銘婭 評論:0
本文Tag: Java

  【IT168 技術(shù)】還記得以前本站的一篇文章《如何在Google App Engine上運(yùn)行PHP》嗎,其實(shí)那是借用 Quercus,一個(gè) 100% 的用Java 實(shí)現(xiàn)的一個(gè) PHP 引擎。今天,這樣的東西太多了,能運(yùn)行在Java的虛擬機(jī)JVM上的程序意味著有天然的跨平臺性,現(xiàn)在JVM并不單單只能運(yùn)行Java程序,在JVM上出現(xiàn)了若干使用Java虛擬機(jī)運(yùn)行的腳本程序,比如什么PHP, Python, Ruby等等,這里有一篇文章評論了在JVM上的可以運(yùn)行的排名前五腳本語言。他們分別是:

  Groovy:構(gòu)建在強(qiáng)大的Java語言之上 并添加了從Python,Ruby和Smalltalk等語言中學(xué)到的諸多特征,為Java開發(fā)者提供了現(xiàn)代最流行的編程語言特性,而且學(xué)習(xí)成本很低(幾乎為零),在開發(fā)Web,GUI,數(shù)據(jù)庫或控制臺程序時(shí), 通過減少框架性代碼 大大提高了開發(fā)者的效率。支持單元測試和模擬(對象),可以簡化測試。無縫集成 所有已經(jīng)存在的 Java對象和類庫。直接編譯成Java字節(jié)碼,這樣可以在任何使用Java的地方 使用Groovy。

  JRuby:一個(gè)純Java實(shí)現(xiàn)的Ruby解釋器。通過JRuby,你可以在JVM上直接運(yùn)行Ruby程序,調(diào)用Java的類庫。很多Java編寫的Ruby IDE都是使用JRuby來解釋語法的。

  Scala:一種多范式的編程語言,設(shè)計(jì)意圖是要整合面向?qū)ο缶幊毯秃瘮?shù)式編程的各種特性。Scala編程語言近來抓住了很多開發(fā)者的眼球。它看起來像是一種純粹的面向?qū)ο缶幊陶Z言,而又無縫地結(jié)合了命令式和函數(shù)式的編程風(fēng)格。Scala的名稱表明,它還是一種高度可伸縮的語言。Scala的設(shè)計(jì)始終貫穿著一個(gè)理念:創(chuàng)造一種更好地支持組件的語言。

  Fantom:Fantom 前身是 (Fan) 是一個(gè)基于 Java 和 .NET 平臺的編程腳本引擎,用來在運(yùn)行時(shí)產(chǎn)生 JVM 和 .NET 平臺的字節(jié)碼,該語言是面向?qū)ο蟮模?Groovy 和 JRuby 有點(diǎn)類似,可通過特定的接口來集成 Java 的類庫。

  Jython:Jython由于繼承了Java和Python二者的特性而顯得很獨(dú)特。其是一種完整的語言,而不是一個(gè)Java翻譯器或僅僅是一個(gè)Python編譯器,它是一個(gè)Python語言在Java中的完全實(shí)現(xiàn)。Jython也有很多從CPython中繼承的模塊庫。最有趣的事情是Jython不像CPython或其他任何高級語言,它提供了對其實(shí)現(xiàn)語言的一切存取。所以Jython不僅給你提供了Python的庫,同時(shí)也提供了所有的Java類。這使其有一個(gè)巨大的資源庫。

  下面是一張表格比較了這五大JVM腳本語言:

 

  Groovy JRuby Scala Fantom Jython
風(fēng)格類型 OO / 動(dòng)態(tài) OO / 動(dòng)態(tài) OO, 過程/ 靜態(tài) OO / 靜態(tài) OO / 動(dòng)態(tài)
源語言 Java Ruby N/A N/A Python
運(yùn)行 編譯型 編譯型,
解釋型
編譯型 半編譯型 編譯型
平臺 JVM JVM JVM JVM, .Net CLR JVM
Java集成 極好 極好 極好 極好
運(yùn)行速度 極好 很好
工具支持 廣泛 還可以 廣泛 幾乎沒有 幾乎沒有

 

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多