Python實(shí)現(xiàn)Java操作的“竅門”
Python 作為計(jì)算機(jī)語言,在廣泛的應(yīng)用之中,如果你有不解之處時(shí),例如,如何用Python實(shí)現(xiàn)Java,以及在Python實(shí)現(xiàn)Java的實(shí)際操作步驟中遇到的困難,你可以瀏覽我們的文章,此文章就是對(duì)其相關(guān)內(nèi)容的介紹。
要了解Jython,首先要了解Python。Python是用C編寫的高級(jí)的、面向?qū)ο蟮摹㈤_放源代碼的編程語言。Cuido vanRossum是Python的原創(chuàng)者,繼而在Python的快速發(fā)展中產(chǎn)生了一大群高水平的設(shè)計(jì)者和程序員。使用Python實(shí)現(xiàn)Java的開發(fā)人員增長(zhǎng)迅速, 并一直在持續(xù)增長(zhǎng)。
然而Sun的Java編程語言也是深人人心的。隨著用Java實(shí)現(xiàn)的項(xiàng)目的數(shù)量接近了用C/C++實(shí)現(xiàn)的項(xiàng)目,Python的Java 實(shí)現(xiàn)也變得很有必要。Jython,最初叫做JPython,就是:Python語言的Java實(shí)現(xiàn)。
Jython 是一種完整的語言,而不是一個(gè)Java翻譯器或僅僅是一個(gè)Python編譯器,它是一個(gè)Python語言在Java中的完全實(shí)現(xiàn)。 Jython也有很多從CPython中繼承的模塊庫。最有趣的事情是Jython不像CPython或其他任何高級(jí)語言,它提供了對(duì)其實(shí)現(xiàn)語言的一切存取。所以Jython不僅給你提供了Python的庫,同時(shí)也提供了所有的Java類。這使其有一個(gè)巨大的資源庫。
Jython和 Python強(qiáng)調(diào)了代碼的簡(jiǎn)明性、方便性和易讀性。Jython使用縮排來對(duì)代碼塊定界以避免使用在Java中的大括號(hào)。Jython 用新的一行來表示一個(gè)新的語句的開始,并有幾個(gè)重要的區(qū)別,如允許在每個(gè)語句后省略分號(hào)。#t#
Jython沒有像在Java中的public、private 和protected存取符,這樣就給程序員提供了快速開發(fā)所需要的靈活性,并將注意力集中在程序邏輯上。正像前面所提到的,Jython不用明顯的靜態(tài)的類型定義,故程序員不需要從程序邏輯轉(zhuǎn)移到類型定義上來。
Jython的歷史要追溯到JimHugunin,他是Guidovan Rossum在國(guó)家研究動(dòng)力中心(CNRI)的同事。JimHugunin認(rèn)識(shí)到Python編程語言用Java實(shí)現(xiàn)的重要性,并實(shí)現(xiàn)了最初名為 JPython的語言。由于要開發(fā)aspectj(http://aspectj.org/),JimHugunin不能繼續(xù)致力于JPython了。所以當(dāng)Python實(shí)現(xiàn)Java的開發(fā)者準(zhǔn)備離開CNRI時(shí),由當(dāng)時(shí)也在CNRI的Barry Warsaw繼續(xù)領(lǐng)導(dǎo)開發(fā)。
Python和 Jython項(xiàng)目組從CNRI離開后,在Sourceforge上轉(zhuǎn)變?yōu)橐环N更開放的語言模型。在此期間,一個(gè)對(duì) Jython(JPython)做了主要貢獻(xiàn)的人FinnBock領(lǐng)導(dǎo)了Jython項(xiàng)目小組。正是由于FinnBock所做的杰出貢獻(xiàn)使Jython現(xiàn)在成為一個(gè)如此有價(jià)值的工具。
類似Jython這樣的開放源代碼項(xiàng)目與開發(fā)和維護(hù)它們的人一樣杰出,從這個(gè)意義上說Jython因?yàn)橛蠪innBack的貢獻(xiàn)和指導(dǎo)而很幸運(yùn)。另外一個(gè)對(duì)Jython做了最新有價(jià)值貢獻(xiàn)的人是SamuelePedroni。Samuele的貢獻(xiàn)主要在Jython的類裝載、導(dǎo)入機(jī)制等等。Finn和Samuele目前是Jython的兩個(gè)主要開發(fā)者。