成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Python正在蠶食全世界

開發 后端
世界上有幾百種編程語言,而真正流行的不過20余種,Python就是其中之一。多年前,Guido van Rossum創造了Python,成為了如今的「Python之父」。面對數百萬人忠誠擁躉,Nick Heath與van Rossum共同探討了Python的過去以及未來。

 

 

[[274918]]

世界上有幾百種編程語言,而真正流行的不過20余種,Python就是其中之一。多年前,Guido van Rossum創造了Python,成為了如今的「Python之父」。面對數百萬人忠誠擁躉,Nick Heath與van Rossum共同探討了Python的過去以及未來。

那一年是1994年底,來自美國各地的一群精英程序員召開會議,討論如何打造出一款新的秘密武器。

Barry Warsaw正是二十位與會成員之一,回憶起首屆研討會上大家的激動之情,他至今仍記憶猶新。“我記得有個人反復強調,‘千萬別告訴別人我們在這里,因為我們的Python是一招獨門絕技’。”

在那時候,當時效力于馬里蘭州美國國家標準局的Warsaw就已經意識到,Python語言會帶來一些前所未有的東西,極大降低代碼編寫與開發任務的難度。“當我第一次見到Python時,我就知道這里頭一定有些不同尋常的東西。它非常重視可讀性,而且編寫Python代碼也相當有趣。”Warsaw回憶道。

 

[[274919]]

▲ 圖:1994年,Barry Warsaw在第一屆Python研討會上發言。

如今,Python所激發的熱情已經遠遠超出最初的開發人員小團隊。有些人預測,Python將很快成為世界上最流行的編程語言,因為它仍在以遠超其它語言的速度吸引著更多新用戶。每一天,都有數百萬人在使用Python,且至今其用戶指數在增長方面也幾乎沒有出現過下滑。

Python被無數專業以及業余開發人員用于處理大大小小的任務,尤其受到網絡開發人員、數據科學家以及系統管理員們的青睞。今年早些時候,Python將來自約5億公里外黑洞的第一張完整照片拼接出來(如下圖),正如它在全球無數臺計算機上為腳本提供支持一樣。

 

Python正在蠶食全世界

Python在眾多全球知名的組織當中發揮著關鍵作用,包括:幫助Netflix將視頻流傳輸至全球超過1億個家庭,為照片共享應用Instagram提供支持,協助NASA推進太空探索等等。

Python,早年的故事

從某些角度來看,Python同其名稱來源、英國著名喜劇團體“巨蟒與圣杯”有著驚人的相似。同樣是在自身的小眾受眾當中,Python語言聲名鵲起并迅速積累起巨大的影響力。

該編程語言由荷蘭程序員Guido van Rossum以編外項目的形式建立。上世紀八十年代末,van Rossum正在荷蘭國家數學與計算機科學研究中心CWI當中開發分布式系統。由于對現有編程語言的不足感到沮喪,他決定創建一種新型語言——既要易于使用,又得功能充沛。

對于一個局外人來說,創建自己的編程語言在我聽起來就像是“我要獨力制造一架飛機”。但是,時年三十多歲的van Rossum有著自己的優勢。他曾投入三年時間在CWI的一個團隊內工作,并曾創建一種解釋性編程語言ABC。因此,他已經深入理解到負責執行程序員指令的解釋器在構建過程中存在哪些問題,以及新語言需要哪些語法構建單元。 

[[274921]]

▲ 圖:Guido van Rossum攝于2001年,當時正值Python軟件基金會成立。

話雖如此,van Rossum當時只能利用有限的編程語言進行項目開發,其中的難度可想而知。他當時正在研究的Amoeba分布式計算系統只支持C或者Unix shell,而這兩者都有很大的局限性。C不僅要求開發人員必須以手動方式管理內存(這項工作極為復雜),其導航機制當中也存在大量犯錯空間;此外,C語言也缺乏能夠顯著減少開發人員日常工作的可復用代碼庫——換言之,開發者必須在每個新項目當中重新發明輪子。另一方面,Unix shell則有著自己的問題——它雖然為常見任務提供一整套實用程序,但卻運行速度太慢,且無法處理復雜的邏輯。

考慮到這些語言給開發人員帶來的種種限制,對于van Rossum來說,創建自己的解釋語言——能夠從ABC語言當中直接借用最佳特性——看起來確實是最好的選擇。

他表示,“我當時的想法很簡單,‘為什么不自己創造一種語言’,它可以從ABC當中借鑒自己的想法,從而將原本需要三年完成的項目壓縮到一個人就能在三個月之內開發完成。作為一次寂寂無名的小嘗試,Python正式進入孕育期。”

1989年底,van Rossum開始認真工作,并決定從他最喜愛的喜劇團體“巨蟒與圣杯(Monty Python)”處借用這個名字。有了與蛇相關的Python之名,再加上纏繞的徽標,接下來他把自己能夠支配的所有時間都投入到了項目當中。

雖然創造Python在名義上能夠幫助他完成自己的其它工作,但van Rossum認為最大的動機,其實來自自主創造語言所帶來的挑戰與激勵。

他表示,“我還記得,最能讓自己提高工作效率的,就是堅信自己能夠做到的信念。在某種程度上,我真的很希望能夠創建出一個偉大的項目,列出我想要代碼,并讓它按照我想要的方式進行布局與設計。編程對我來說是件很有趣的事兒。”

盡管單槍匹馬創造編程語言聽起來好像不太靠譜,但van Rossum同志還是很好地完成了工作。在上世紀八十年代末,各類主要語言的最大問題,就是會帶來開發人員們非常強烈的挫敗感。Larry Wall曾有一句名言,他說在開發Perl語言的過程中,最大的動力主要來自語言本身在解決編碼問題上的笨拙,以及設計中體現出的種種“懶惰、急躁與狂妄自大”。同樣的,John Ousterhout也是在構建集成電路交互工具的過程當中,在糟糕現狀的驅使下設計出Tcl。

在短短三個月當中,van Rossum就開發出一套Python解釋語言的工作原型。他表示這套原型缺少現代功能,但其中已經出現了當前Python所具備的種種特征。

他指出,“如今的Python當中擁有很多重要的抽象;當時沒有,但語言本身看起來已經極為相似。”

“當時,我已經開發完成解釋器以及語言的所有基本組件。來自首套Python解釋器中的簡單Python程序直到今天仍能正常運行。”他還補充道,函數的定義方式完全相同、縮進機制完全相同、字典與元組使用的語法完全相同,甚至連用戶在使用Python開發時面對的交互提示符也完全相同。

不過,雖然他的兩位同事接受了這種語言并立即開始使用,但van Rossum當時對其廣泛流行并沒有抱很大的期望。畢竟他們都很清楚,在互聯網時代到來之前,獲取一種編程語言有多么困難。

不同于如今只需幾下點擊就能完成軟件共享的方式,上世紀八十年代的軟件發布可謂困難重重。van Rossum回憶起最早推廣ABC解釋語言時的艱辛歷程。

van Rossum表示,“我還記得那時候大概是1985年,我去美國度假。那是我第一次去美國,我把存儲著ABC語言的磁帶放在了行李箱里。”

通過當時才剛剛成形的基礎電子郵件系統,他得到了一份對該語言有興趣的開發人員的住址與電話清單。由于傳輸能力有限,這些報名信息就是郵件所能承載的極限了。他只能挨家挨戶郵寄這些磁帶。盡管付出了不小的努力,但ABC并沒能獲得成功。

“就是因為這種分發上的困難,雖然ABC也擁有一系列非常出色的特性,但卻沒能走得太遠。”但隨著互聯網革命的蓬勃發展,即使不用裝滿磁帶的手提箱,Python也能夠被輕松分發到用戶手中。

Van Rossum于1991年通過alt.sources新聞組向全世界發布了Python語言。這是一份開源許可,而這時距離開源許可這個概念的出現才剛剛過去六年。雖然Python解釋器仍然由多達21個獨立的壓縮文件組成,但需要在Usenet網絡上下載整整一夜,但其效率仍然遠遠高于幾年前的手動郵寄。

他表示,“我希望這種新生的語言能夠在一定程度上獲得成功,但我之前也嘗試過,最終卻只是徒勞一場。”

根據以往的經驗,van Rossum開始關注Python的用戶群體,并發現其長期處于增長態勢。漸漸地,他意識到相關生態正在建立。在經過一段時間與Python社區的定期互動之后,他意識到自己可能創造了一種有望大獲得成功的編程語言。

 “我認為這種實現過程會非常非常緩慢。在我們完成第一個開源版本之后,我制定出一份新版本的規劃方案,并與剛剛出現的新興Python社區進行探討。這種感覺很棒,有種在干大事的感覺。”

Python為什么取得成功?

從這種意義上講,Python的黃金時代正步步來臨。而這種年輕的語言,直到二十世紀九十年代早期至中期,真正在世界范圍內引起廣泛關注。

Van Rossum認為開發人員之所以會被Python所吸引,靠的就是他當初創造這款語言時感受到的種種問題。開發人員想要一種高級腳本語言,在易用性與功能性之間找到理想的平衡,且不像Unix shell那樣在處理復雜邏輯方面存在種種限制。他們希望擺脫C語言給開發者帶來的內存管理難題,也不愿再在每個項目的起步之初面對基本相同的任務重新編寫實現代碼。

Warsaw表示,Python在實用性方面找到了平衡,同時也沒有犧牲出色的功能性——在上世紀九十年代初,沒有任何一種其它主流編程語言能夠實現這種平衡。他表示,“當時我一直在編寫大量的Perl、Tcl以及C代碼,但完全沒有樂趣可言。這時Python出現了,我的感覺就像,‘哇哦,編程終于又有趣了起來!’”

Python帶來的,是清晰明確的語法,其中通過縮進將代碼進行分組,并使得開發人員能夠更輕松地理解代碼含義。

分析公司Gartner應用程序平臺戰略團隊研究主管Fintan Ryan表示,這種清晰性使得Python成功贏得眾多開發人員的“芳心”。無論是在當時還是現在,這種利用縮進實現代碼分組的做法都非常重要、堪稱天才的創舉。“它提供一種非常干凈的語法。我們在使用其它語言時需要強制執行,但Python卻能夠自動執行。當然,有些程序員喜歡這樣,有些則非常討厭這種設計。”

事實上,Python優先考慮代碼的可讀性并非偶然之舉。van Rossum表示,編程語言與開發人員之間的思想交流非常重要,畢竟編程的本質就是由程序員告訴計算機該做什么。

除了可讀性優勢之外,Ryan表示從早期開始,Python就提供一系列內置功能,這也使其從其它編程語言當中脫穎而出。他表示,“Python從起步階段就擁有類與異常處理等功能。Python還提供對lambda、map以及filter等函數的支持能力,這些在不少場景下都非常實用。”

如果八十年代后期的那些編程語言能夠更完善一些,那么Python可能將永無出頭之日。事實上,van Rossum創建Python的動機之一,就是Perl腳本語言在他使用的Amoeba分布式計算系統上無法兼容。他指出,“對于Python來說,最幸運的就是Perl根本無法被移植到Amoeba之上。如果能夠完成這樣的移植,我想自己壓根不會想到著手創造自己的編程語言。”

盡管在發布之后很快吸引到眾多硬核用戶粉絲,但直到上世紀九十年代,Python仍然只是一種小眾編程語言。Van Rossum表示,該語言的主要競爭對手包括Tcl/Tk與Perl,這兩者與python一樣非常重視簡單易用與功能豐富這兩大目標。

他指出,“在九十年代,如果要對這三種語言進行排名,那么Perl絕對是第一——而且優勢超級明顯。Tcl/Tk位列第二,Python則只能屈居第三。”

如今的Pythohn早已不同于往日。根據年度Stack Overflow開發者調查(目前最為全面的編程語言使用情況排名之一),Python已經成為活躍開發人員數量增長最快的編程語言,而Perl則早已萎縮至可以忽略不計的程度。下圖同樣體現出Python爆炸式的增長勢頭,目前在Stack Overflow上與Python相關的問題在增長數量上遠遠超過任何一種其它編程語言。

 

Python正在蠶食全世界

▲ 圖:據Stack Overflow數據顯示,在主流編程語言增長趨勢中(包括Java、JavaScript、C#、PHP、C++、python),Python的用戶呈現巨大增長。圖片來源/Stack Overflow

那么,Python是如何超越舊日競爭對手的?兩種設計思路類似的語言,又為什么會迎來截然不同的命運?Van Rossum認為,一旦代碼庫增長至一定規模,接下來考驗的就是代碼庫的維護難度。他表示,“人們普遍發現,對于10行的腳本,Perl是最完美的語言選項。但如果面對多達500行的主線代碼與幾千行的庫代碼,那就需要大量約束才能保證Perl代碼的可維護性。相比之下,即使不施加這么多約束,Python代碼仍然具有相當的可讀性與可維護性。”

“當時有不少互聯網開發人員——主要負責早期互聯網工作——希望編寫更為龐大的應用程序。在他們看來,由于可維護性優勢,使用Python語言編寫應用程序要比使用C、C++或者Java語言簡單得多。”

整個九十年代,Python的使用規模不斷擴展,而繼續效力于CWI的van Rossum則發現他的成果正為世界上越來越多的人們所接受并喜愛。

他指出,“我確實創造出了出色的成果,它把世界各地的人們聯系在一起——澳大利亞人、美國人、其他歐洲國家的人等等。我很享受這樣的成就。”

Python與Web

到九十年代中期,Python開始迎來新的使用方式——從原本的音頻錄制與回放腳本,逐步邁向Web開發。而后來,Web應用程序開發也成為Python語言的核心支柱之一。

van Rossum指出,Python最初在Web服務器上的應用主要面向后端腳本以及Perl與Shell腳本。“其中一件大事在于Web開發,這對我來說也是一種非常有趣的體驗。大家可以創建動態網頁,這也成為我個人最喜愛的Python應用方向之一。”

Gartner公司的Ryan表示,Python之所以能夠在上世紀九十年代在開發人員中大受歡迎,憑借的就是它在快速創建強大腳本方面的出色表現。他表示,“作為一種功能強大的腳本語言,Python降低了大部分用戶的入門門檻。”

除此之外,Ryan還強調稱Python語言功能多樣且易于上手,因此吸引到許多不同類型的用戶,他們的技術專長也各不相同。他指出,“系統管理員及其他一些用戶利用Python語言進行系統自動化與編程,開發人員則可以使用其中的函數編程等功能,同時使用繼承類——相比之下,Perl在功能性方面要差得多。一旦人們熟悉了這種語言,而且考慮到Python的入門門檻相當低,整個開發工作很快就會變得效率可觀。”

到1994年,Python引起了Michale McLay的注意——他在當時的美國國家標準局(NBS)、即如今的美國國家標準與技術研究院(NIST)擔任高級職務。這預示著Python語言開始正式進入研究人員與科學家的視野。McLay當時很好奇國家標準局的科學家如何使用Python語言。Van Rossum表示,他們“有大量數據需要處理,但他們的編程水平往往不是很高。”

為了向標準局內的技術人員推廣Python,McLay邀請當時仍在荷蘭CWI工作的van Rossum以客座研究員的身份前來工作2個月。這一舉動,不僅影響到Python語言的未來發展,同時也給van Rossum的生活帶來了巨大變化。

在此期間,第一屆Python研討會在國家標準局的辦公室里正式召開,van Rossum、Barry Warsaw以及其他Python早期支持者們共聚一堂,討論他們各自在用Python實現什么、Python的未來發展方向又在哪里。

在這里,van Rossum遇到了Bob Kahn,而后者正是互聯網基礎技術之一——TCP/IP協議——的開發者。

正是此次會議,促成了Kahn與國家研究計劃倡議(CNRI)之間的合作。CNRI是位于弗吉尼亞州的非營利性研究組織,專注于網絡技術的戰略發展事務。

正如Python回應了人們對于新型編程語言的需求一樣,van Rossum表示就在他開始質疑自己是否還有理由留在CWI的時候,新的工作機會出現在他的面前。

他表示,“CWI更像是一個學術機構,因此給了我一些現實壓力。要么考取博士學位,要么就得在其他地方重新找工作。”

 “大家可以想象一下,當時我大概35歲左右,那個時候再去攻讀博士學位其實不是太好的選擇,而且也沒什么吸引力。而且在此之前,憑借著Python項目,已經有一些潛在選擇擺在我的面前,但我沒有同意。而在這里,我喜歡這些人,也喜歡他們提供的選項。所以我很快答應了下來。”

在CNRI,在一支Python愛好者小組的幫助下,van Rossum整理出大量用于管理Python語言的結構。在1995年4月正式加入CNRI之后,van Rossum帶領一支開發者團隊致力于構建Knowbot程序。這些軟件被稱為移動代理,負責運行互聯網等跨分布式計算機系統。

該團隊使用的正是Python語言,而van Rossum迎來了Jeremy Hylton、Roger Masse、Barry Warsaw、Ken Manheimer以及Fred Drake等重要成員,他們也都繼續在Python社區當中發揮重要作用。

 

[[274922]]

▲ 圖:Van Rossum、Roger Masse、Barry Warsaw

Van Rossum表示,“我們最終建立起一個由4到10人組成的團隊,其中大多數人都在CNRI工作,這也正是Python語言的開發核心。”

就在van Rossum效力于CNRI的同時,該團隊協助他建立起python.org網站、用于管理核心代碼庫變更的CVS服務器,以及面向Python特別興趣小組的郵件列表(用于改進及維護Python語言)。

自1991年公開發布以來,Python用戶社區迎來了顯著增;到九十年代下半葉,該語言甚至在全球范圍內吸引到諸多擁躉。在此期間,語言的管理也開始步入正式化。Python軟件基金會(PSF)的前身正式建立,并于2001年完成更名。在社區發展的同時,1994年起召開的兩年一度的Python研討會也逐步演變成規模更大的年度盛會,并最終發展成當下仍然人氣爆棚的PSF年度PyCon大會。

到新世紀之交,Python語言的整體規模已經超出人們的想象,而龐大的社區也在項目管理當中發揮著積極作用。這時候,人們終于不再像過去那樣,擔心“如果Guido被公共汽車撞了”,Python語言該怎么辦這類問題。

Van Rossum當然繼續在項目中扮演著核心角色,而且他的思維也始終主導著語言的發展。正因為如此,多年以來他被很多Python稱為“仁慈的獨裁者”。

Van Rossum指出,“總體來講,在很長一段時間里,我都能夠很好地消化壓力,并且培養起不少項目管理技能。我可以借此向他人委派任務,讓人們掌握自己的命運。”

Gartner公司的Ryan指出,由語言創造者擔任語言管理者的做法并不罕見。Larry Wall之于Perl,以及Ryan Dahl之于JavaScript運行時Node.js,都是類似的情況。但他強調稱,van Rossum的不同之處在于他在管理Python時總是強調公平。

他表示,“人們普遍認為,van Rossum在項目的發展方向與整體管理之間找到了理想的平衡點。”

事實上,van Rossum認為這種允許核心開發人員在社區當中進行公開辯論的方式,正是Python語言長期保持開放性并獲得持續成功的決定性因素所在。

Python的演變

這些年里,Python語言取得了重大飛躍。2008年,Python 3.0的推出使得該語言正式完成現代化,項目的管理方式也不斷迎來關鍵性改變。

最重要的變化出現在去年,由于公眾對于將分配表達式引入語言的決定(相關提議于Python增強提案PEP572當中提出)存在分歧,van Rossum辭去了自己在BDFL的領導者角色。

雖然此舉是為了進一步提升代碼編寫的效率,但反對變革的人們在網上對van Rossum發出嚴厲批評,有些人認為這樣會導致Python代碼的可讀性下降、進而導致難以維護。

Van Rossum表示,他習慣于圍繞新功能的問題開展辯論,但正是一部分反對者保持的頑固態度,使他下定決心做出一些自己的決定。

他指出,“我對某些做法感到非常失望,有些人會把技術層面的意見,轉化為社交媒體上的抱怨或者是對我個人的攻擊。這讓我感到非常沮喪。”

“過去,我一直很清楚,如果有人打算改變語言或者改進某些功能,那么社區的核心開發人員就會討論事情的利弊。如此一來,要么是達成明確的共識,要么就是在爭不出個結果時,由我在認真考慮之后以某種方式做出決定。對于PEP572號提案,雖然其中確實存在爭議,但我的選擇是「沒錯,我希望這樣做」。不過很多人顯然不打算求同存異。”

 “雖然這并不是什么太大的爭端,但我覺得,核心開發者社區對我已經沒有充分的信任,我不再適合帶領這個項目繼續前進。”

在他看來,之所以會出現這一次語言變化方面的糾紛,是因為Python在用戶數量方面的快速增長。

“造成這樣結果的原因,可能在于Python社區的規模已經如此之大。我們很難在其中達成任何形式的共識,因為無論決定采用哪個選項,總會有異見人士跳出來反對。”

今年早些時候,Python核心開發人員們(即致力于維護及更新Python引用CPython解釋器的人員)選出了一個指導委員會,用以監督該語言的未來發展方向。Van Rossum與Warsaw,外加Brett Cannon、Carol Willing與Nick Coghlan等核心開發人員一同入選。

Warsaw表示,對于用戶群體快速增長的Python語言來說,這樣的變革非常必要。

他指出,“我認為Guido肩上的擔子太重了。”

Warsaw表示,“25年前,一切都還很好。當時的Python社區還很小、語言受眾也比較有限。但現在情況不同了,如果仍然把一切都交給一個人,那真的太夸張了。我認為單純出于對他個人健康以及社區參與度的考慮,我們也有必要把這副擔子分攤給五個人。”

每一次新的Python功能發布之后,指導委員會都會進行新一輪選舉。Warsaw表示,這將給Python語言下一代領導者的輪替鋪平道路。

他指出,“如果想讓Python在未來25年當中繼續保持健康的運作狀態,那么就必須逐步把Guido和我這樣的人排除在外。”

事實上,Python的整個核心開發人員社區也歡迎設立指導委員會。核心開發人員Mariatta Wijaya表示,此舉代表著項目朝著正確的方向邁出了一大步。她指出,“對我來說,由委員會負責要比一切歸于一人更好——畢竟其中的責任與負擔都太重了。這是個好兆頭,未來社區將有更多指導意見可供參考。”

 

[[274923]]

▲ 圖:Python核心開發人員Mariatta Wijaya在Python指導委員會成立儀式上

Python的未來

雖然Python仍在以驚人的速度吸引新用戶,但社區中的部分成員也意識到未來可能出現的挑戰。要保持這種良好的勢頭,Python就必須持續發展。

在今年的Python語言峰會上,BeeWare公司聯合創始人Russel Keith-Magee警告稱,如果不能針對移動與新型網絡平臺做出改善,那么Python就將面臨“生存風險”。

他指出,“智能手機與平板電腦正在向著臺式機與筆記本從未觸及過的市場領域滲透。但作為語言社區,我們一直沒有考慮過如何在這些設備上使用Python語言。”他提到自己的兒子會在學校里使用iPad,“當筆記本電腦最終成為一類小眾產品時,Python的生存空間又在哪里?”

Keith-Magee的BeeWare項目旨在實現Python應用程序的一次編寫、隨處運行目標,從而解決Pytho目前在標準x86 PC平臺之外的支持能力問題。

他表示,Python語言的未來更新必須能夠更好地支持非x86硬件平臺上的代碼編譯需求;Python的測試套件很容易在移動及Web 平臺上發生崩潰;Python應用程序的安裝包大小一直在不斷膨脹,且其中的依賴項無法得到有效縮減;在Android、Windows以及Web上編寫GUI代碼時,必須使用asyncio庫;標準庫中有大量模塊無法兼容除CPython以外的其它Python解釋器。

Warsa表示,Keith-Magee的思路非常好,而且項目現在確實有必要思考Python該如何與新平臺實現順暢對接——包括手機、平板電腦以及WebAssembly等新興技術。

Warsaw坦言,“現在Python在這些新興平臺上的影響力確實比較有限。”他希望未來用戶能夠在iPhone或者Android手機上隨意下載應用,而無需“意識到這是使用Python編寫而成的。”

隨著現代芯片內部處理器核心數量的不斷攀升(英特爾最新服務器產品中的核心數量已經達到48個),Warsaw也熱衷于推動Python在跨核心任務分散方面做得更好。

他對于Eric Snow在子解釋器方面做出的努力,以及擴展Python以實現代碼并行運行的能力感到興奮。他表示,“我最希望看到的,就是Python代碼能夠利用多個核心完成更多工作。”

Snow參與了一個長期項目,旨在讓Python能夠輕松在多個處理器核心之間高效實現任務分割。Snow專注于對Python現有子解釋器中的功能進行重新編寫,以改變各子解釋器間的彼此交互方式。而實現這一切的關鍵,正是Python的全局解釋器鎖(GIL)。

Warsaw指出,“GIL目前還沒有完全準確就緒。也許會在Python 3.8或者3.9版本中推出。我想其正式發布時間,應該在未來的兩年到兩年半之間。我對結果感到樂觀。我很高興Eric能夠為此不懈努力,這確實是一項非常重要的工作。”

另外,即使是在多核心多線程Python應用運行方面遭遇失敗的嘗試——例如The Gilectomy,也能夠帶來不少有趣的經驗教訓。這將指導后來者在Python的跨核心工作負載分散方面做得更好。

Python社區還采取措施以實現語言內置代碼標準庫的現代化。他們最近發布了一項刪除庫內過時模塊的提議;在此期間,社區還開始著手解決針對Python標準庫狀態的一些批評意見。該庫憑借著廣泛的常見任務執行能力,而成為Python語言的一大主要優勢。然而,這套被稱為Python“內驅電池”的庫卻在今年的Python語言峰會上面臨質疑,有與會者詢問是否可以開放人們的代碼庫選擇權,從而以更靈活的方式使用Python(目前Python會固定捆綁這套標準庫)。

還有一些針對Python核心開發人員與Python指導委員會的問題,包括他們能否切實反映當下Python用戶當中的不同細分群體。

Wijaya表示,“我希望看到委員會成員能夠有更好的代表性,而不只是做到表面上的性別平衡——種族以及其它因素的平衡同樣非常重要。”

 “在PyCon大會上,我與來自印度及非洲的PyLadies成員進行了交流。她們認為,「當我們聽到Python或者PyLadies組織時,首先想到的只會是美國或者加拿大的成員。實際上,世界各地還有其他用戶群體。為什么我們不能看到更多樣化的組織方式呢?」我認為這很有道理,所以我覺得有必要在這方面做出嘗試,畢竟我們都應該在社區當中盡到自己的責任。”

最后,盡管有著“仁慈的獨裁者”的監督,近年來Python的運營思路已經變得愈發廣泛。Warsaw表示,人們通過Python的多種使用方式探索著不同的可能性,而這正是通向新用途的大門。

他指出,“我們應該從社區中吸取更多養分,而非自上而下硬性貫徹自己的思路。”

社區項目對Python產生巨大影響的一個典型實例,正是Type Hints。這是一項通過Python 3.5推出的功能,源自2012年由一位博士生推出的mypy項目。其負責提示可選的類型檢查,幫助開發人員發現某些可能通過其它方式被引入軟件的錯誤。

對于Python的實際應用而言,往往會有眾多開發人員立足同一大型代碼庫進行工作,因此添加這樣的額外安全層不僅僅是多了一重保障——這實際上代表著建立起代碼該做什么以及不該做什么的額外洞察見解,且無疑將產生重大影響。

Warsaw指出,“就個人而言,這使得Python能夠被擴展至其它規模更大的組織當中——例如基本上以Python 3為基礎的Instagram。這一點非常重要。”在他看來,asyncio正是社區創意的另一個好例子,同樣對語言的發展產生了巨大影響。

隨著指導委員會的建立以及遠超以往的用戶群體規模,van Rossum樂觀地認為“社區驅動下的語言演變”將繼續“取得輝煌的成功。”

他表示,“我們擁有一個非常可靠的核心開發人員社區,現在又有了一套新的治理系統,因此我想我們已經做好了準備,能夠就會Python編程語言的一切演變需求。”他同時贊揚了社區內對于Python各個層面的支持與貢獻。

Warsaw表示,如果還有人質疑Python社區探索新用途的能力,不妨先想想Python語言在幫助捕捉有史以來第一幅黑洞圖像方面發揮的重要作用。

 “這真的讓我感到驚喜萬分。在Python社區當中,我就認識不少非常瘋狂的科學家。他們總是在思考,琢磨當下能夠做到的用例,并探索未來有望實現的更多新型用例。 

責任編輯:龐桂玉 來源: 科技行者
相關推薦

2020-04-28 10:15:54

云計算軟件行業

2020-12-18 10:23:59

比特幣美元金融

2014-11-12 09:49:43

Linux開源

2014-11-12 10:22:50

Linux開源

2014-03-11 09:30:00

面試職場

2016-03-21 14:52:25

2014-01-26 21:45:06

微軟

2018-04-24 08:33:11

軟件開發者 Bug

2020-03-02 15:48:26

戴爾

2018-03-06 10:45:25

無服務器基礎設施

2009-11-04 10:33:57

Sun

2015-08-19 13:31:14

SDN

2010-12-10 09:11:00

Oracle服務器操作系統

2015-02-04 11:03:34

時代馬云阿里巴巴

2013-03-07 09:12:41

巨型電腦云計算

2023-08-02 07:12:35

2014-11-04 10:57:42

移動優先

2011-10-25 10:56:21

2016-11-29 08:45:17

云計算服務器

2022-05-10 11:32:51

動化測試的常見挑戰
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲精品黄 | 免费看91| 免费av观看| 中文字幕 国产 | 国产精品成人一区二区三区夜夜夜 | 免费v片在线观看 | 欧美一级二级三级视频 | 久久久久欧美 | 91在线视频在线观看 | 欧美一区成人 | 欧美精品一区在线 | 尹人av | 日韩一区精品 | 欧美精品在线观看 | 日韩欧美精品 | 午夜影晥 | 欧美日韩一区在线 | 成人在线欧美 | 亚洲狠狠 | 国产精品久久久久久久久久久免费看 | wwwxxx国产 | 日本不卡视频在线播放 | 正在播放亚洲 | 国产a级毛片 | 野狼在线社区2017入口 | 日本久草| 久久激情网 | 久久久久久影院 | a黄毛片 | 亚洲成人精品 | 精品国产乱码久久久久久蜜柚 | 免费久久精品 | 一区二区三区视频免费观看 | 欧美簧片 | 日韩三级一区 | 精品国产视频 | 国产高清在线 | 九九视频网 | 国产日韩一区二区 | 日韩一区二区av | 91精品国产综合久久久久久丝袜 |