日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

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

 jacklopy 2011-06-20

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

2011年06月20日18:33 來(lái)源:酷殼 作者:陳皓 編輯:胡銘婭 評(píng)論: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上的程序意味著有天然的跨平臺(tái)性,現(xiàn)在JVM并不單單只能運(yùn)行Java程序,在JVM上出現(xiàn)了若干使用Java虛擬機(jī)運(yùn)行的腳本程序,比如什么PHP, Python, Ruby等等,這里有一篇文章評(píng)論了在JVM上的可以運(yùn)行的排名前五腳本語(yǔ)言。他們分別是:

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

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

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

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

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

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

 

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

 

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

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多