詳細(xì)解讀Python項(xiàng)目?jī)?nèi)部構(gòu)解
通常情況下,一個(gè)開(kāi)發(fā)語(yǔ)言的新版本都會(huì)保持向后兼容原來(lái)的老版本,早在2000年,Python項(xiàng)目的創(chuàng)始人Guido van Rossum宣布,他將跨入一個(gè)新的Python版本,3.0版本將不會(huì)向后兼容。
開(kāi)發(fā)者也許會(huì)無(wú)法接受語(yǔ)言新版本的用法和老的代碼不兼容,但是對(duì)于Rossum來(lái)說(shuō),激進(jìn)的升級(jí)是必要的。語(yǔ)言如果能用無(wú)數(shù)種方式做同一件事情,那么應(yīng)該做的工作沒(méi)有人真正做到了。
3.0的發(fā)布是一個(gè)重要?jiǎng)幼?,Rossum說(shuō),這是要讓python語(yǔ)言有更好的基礎(chǔ)向前邁進(jìn)。Python 3.0 改變了什么?
從某種意義來(lái)說(shuō),Python項(xiàng)目已經(jīng)成為自身成功的受害者。
Rossum說(shuō),“最初的想法中,Python的使用范圍很小,我真的沒(méi)有想到Python是如此成功,正在各種各樣的應(yīng)用中使用,從web應(yīng)用編程到科學(xué)計(jì)算,以及所有的一切類(lèi)型程序?!?/P>
Van Rossum于1990年創(chuàng)建Python,作為一個(gè)開(kāi)源,可擴(kuò)展,高層次的語(yǔ)言,他還需要處理一些系統(tǒng)管理的職責(zé)。如今Python是世界上***的語(yǔ)言之一。08年3月,奧地利研究者Anton Ertl通過(guò)在新聞組發(fā)貼數(shù)量來(lái)統(tǒng)計(jì)語(yǔ)言的熱門(mén)程度,Python排在第三位,僅次于C和Java之后。
今天,最容易來(lái)教別人如何編程的語(yǔ)言是python,python是使用起來(lái)最簡(jiǎn)單的語(yǔ)言之一,而且很優(yōu)雅。但是Python的簡(jiǎn)單正在遏制自己的增長(zhǎng)。在整個(gè)90年代,不停有新的功能和屬性進(jìn)入Python項(xiàng)目。
但是不一致開(kāi)始在整個(gè)平臺(tái)上顯現(xiàn)出來(lái)。 Rossum說(shuō),我們開(kāi)始慢慢逝去了簡(jiǎn)單的優(yōu)勢(shì),我們必須打破向后兼容性,停止語(yǔ)言定義的膨脹,雖然這種轉(zhuǎn)變發(fā)生的非常緩慢,幾乎難以察覺(jué)。
Python語(yǔ)法改變有一系列的列表,有些改變很小,可能被忽略,有些程序員可以迅速接受:比如去除print語(yǔ)句,加入print()函數(shù)實(shí)現(xiàn)相同的功能。同樣的還有exec語(yǔ)句,已經(jīng)改為exec()函數(shù)。去除了<>,全部改用!=。詳細(xì)可以查看:Python 3.0 搶“鮮”體驗(yàn)。
如何轉(zhuǎn)換?Python 2.6作為過(guò)渡版本,2.6可以幫助開(kāi)發(fā)者找到過(guò)時(shí)的程序代碼,為3.0版本做準(zhǔn)備,同時(shí)還有一個(gè)python 2.0到python 3.0的代碼轉(zhuǎn)換工具。當(dāng)然也有很多人置疑python 3.0是否必要。
有可能升級(jí)被大多數(shù)不愿意轉(zhuǎn)換老代碼的開(kāi)發(fā)商忽視,因此,它可能失去其地位,類(lèi)似于微軟的vista沒(méi)有取代windows xp成為事實(shí)流行標(biāo)準(zhǔn)。比如編寫(xiě)打印軟件的Aahz Maruch負(fù)責(zé)的工程,Page DNA項(xiàng)目,有超過(guò)20萬(wàn)行代碼需要轉(zhuǎn)換,這是將是一個(gè)巨大的工作。
Maruch說(shuō)道,我們將等待幾年后的自動(dòng)翻譯工具來(lái)改善,我們甚至沒(méi)有談到3.0,打算等它發(fā)布兩三年以后。今天Python主要的實(shí)現(xiàn)是CPython。這是一個(gè)用C寫(xiě)的Python翻譯器。
而且還有其他的Python實(shí)現(xiàn),比如JPython(Python in Java),IronPython ( 用微軟.net通用運(yùn)行時(shí)語(yǔ)言編寫(xiě)的Python),以及PyPy(一個(gè)用 Python寫(xiě)的Python翻譯器)。不管怎樣,Python的核心開(kāi)發(fā)團(tuán)隊(duì)對(duì)推廣Python 3.0非常有信心,Rossum認(rèn)為人們使用2.6從現(xiàn)在開(kāi)始不到一年就會(huì)轉(zhuǎn)移到3.0版本上。
他同時(shí)建議:你如果開(kāi)始一個(gè)新的Python項(xiàng)目,你絕對(duì)應(yīng)該使用3.0.讓我們祝Python 3.0取得成功。
【編輯推薦】