在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

將基于Python的過去及今后的計劃展開討論

Q4MP_gh_c472c21 ? 來源:嵌入式ARM ? 2019-12-03 15:21 ? 次閱讀



當(dāng)初由于無法忍耐編程語言的種種缺點,Guido van Rossum 一手創(chuàng)建了 Python 編程語言。如今 Python 已有數(shù)百萬使用者,在本文中將基于 Python 的過去及今后的計劃展開了討論。
1994 年底,一群來自美國各地的頂級程序員開會討論他們的新式秘密武器。
Barry Warsaw 是當(dāng)初參加首次 Python 編程語言研討大會的 20 名成員之一,對他來說,當(dāng)年那個激動人心的時刻至今仍歷歷在目。
“我還記得有一個人說,我們不能告訴任何我在這里,因為使用 Python 是一種競爭優(yōu)勢。這是一種秘密武器,對吧?”
那次大會在馬里蘭州的那個后來成為了美國國家標(biāo)準(zhǔn)局的地方舉行,Warsaw 說,他們能明顯感受到 Python 提供的新功能能夠降低編寫代碼的難度,讓開發(fā)工作更為輕松。
他回憶道:“在第一次接觸 Python 的時候,我就感覺到一些特別之處。編寫 Python 代碼是一種樂趣,而且可讀性非常高。”

Python 之父Guido van Rossum
如今,人們對 Python 的喜愛已遠遠超出最初的那幾名開發(fā)者的圈子,有人預(yù)測 Python 很快就會成為世界上最流行的編程語言,因為這種語言新用戶的增長速度超過了任何其他編程語言。數(shù)百萬計的程序員每天都在使用 Python,而且其用戶的增長指數(shù)沒有絲毫減緩的趨勢。
無論是專業(yè)人士還是業(yè)余開發(fā),無論項目的大小,人們紛紛選擇了 Python,尤其是 Web 開發(fā)人員、數(shù)據(jù)科學(xué)家和系統(tǒng)管理員,他們尤其喜歡 Python。今年早些時候,有人利用 Python 合成了首張距離地球 5500 萬光年的黑洞照片,而另一方面,Python 也成為了全球電腦上為無數(shù)黑客攻擊腳本提供動力的編程語言。 Python 在全世界一些知名的組織中也發(fā)揮著關(guān)鍵性作用,它幫助 Netflix 為全球超過 1 億個家庭帶來了在線視頻,幫助 Instagram 為千家萬戶提供了照片共享,還幫助 NASA 展開太空探索。

早年的 Python Python 這個名字源自英國的一組超現(xiàn)實幽默表演團體蒙提·派森(Monty Python),從某些方面來說,該編程語言的發(fā)展與這個表演團體如出一轍——同樣的離奇曲折,又驚世駭俗。而 Python 編程語言本身也在自己的領(lǐng)域享有盛名和影響力。
Python 編程語言始自荷蘭程序員 Guido van Rossum 的一個業(yè)余項目。20 世紀(jì) 80 年代末,Van Rossum 在荷蘭國家數(shù)學(xué)和計算機科學(xué)研究中心(Centrum Wiskunde & Informatica,CWI)開發(fā)分布式系統(tǒng)。現(xiàn)有編程語言的缺陷令他感到萬分沮喪,于是他決定創(chuàng)建一門新的編程語言——一門易于使用且功能齊全的編程語言。
在外人看來,創(chuàng)建自己的編程語言就好像是說“我要建造自己的飛機”,但是當(dāng)時三十多歲的 Van Rossum 擁有一些先發(fā)優(yōu)勢。他在一個 CWI 的團隊中工作了三年,期間他們創(chuàng)建了一種解釋性的編程語言 ABC,所以他對執(zhí)行程序指令的解釋器以及新語言所需的語法基本構(gòu)成已有深入的了解。
此外還有很重要的一點,當(dāng)時的 Van Rossum 意識到使用那些功能有限的編程語言來完成工作的難度太大。當(dāng)時他在研究 Amoeba 分布式計算系統(tǒng),寫代碼需要使用 C 或 Unix shell,這兩者都有很大的局限性。C 不僅要求開發(fā)人員應(yīng)對手動管理內(nèi)存的復(fù)雜性以及遇到潛在錯誤的危險,而且還缺少開發(fā)人員日常工作所需的可重用代碼庫,每次遇到新項目開發(fā)人員都需要重新開發(fā)基本的組件。而 Unix shell 則有完全不同的問題:它為解決常見的任務(wù)提供了一套實用程序,但其運行速度太慢,無法處理復(fù)雜的邏輯。


這些語言上的限制讓開發(fā)人員的工作痛苦不堪,因此對于 Van Rossum 來說,創(chuàng)建自己的解釋語言才是最好的選擇(而且他還可以借鑒 ABC 語言的部分功能)。 “當(dāng)時我就在想,為什么不創(chuàng)建自己的編程語言呢?我從 ABC 中借鑒了一些想法,同時將項目的規(guī)模從三年的開發(fā)降低到我可以獨自承受的工作量,作為我的業(yè)余項目在三個月內(nèi)完成。于是,Python 誕生了。”他說。
1989 年底,Van Rossum 正式啟動了這個項目,這門編程語言的名字來自他最喜歡的戲劇表演團蒙提·派森(Monty Python),由于 Python(蟒蛇)與蛇有關(guān),所以后來他選用了樣子有點像蛇纏繞的 Python 標(biāo)志。
“當(dāng)時的我并沒有太多豐富的社交生活。因此,我把看電視的時間花在編程上,有時也會邊看電視邊寫代碼。”他承認(rèn)說。
雖然名義上他創(chuàng)建 Python 是為了幫助減輕自己的工作負擔(dān),但 Van Rossum 說更大的動力來自面對創(chuàng)建自己的編程語言的巨大挑戰(zhàn)。
“我并不清楚我是不是真的相信創(chuàng)建這樣一門編程語言可以提高我的工作效率。可能在某種程度上,我只是很喜歡親手創(chuàng)建一個大項目的想法,展示我想展示的代碼,按照我想要的方式設(shè)計。我很享受編程的樂趣。”他說。
盡管僅憑個人的力量創(chuàng)建一門編程語言的想法聽起來很不尋常,但當(dāng)時的 Van Rossum 生在一個英雄輩出的年代。20 世紀(jì) 80 年代后期,在開發(fā)工具給當(dāng)時的開發(fā)人員造成的重重挫敗感的刺激下,各大主流編程語言如雨后春筍般紛紛涌現(xiàn)。拉里·沃爾(Larry Wall)曾說,他創(chuàng)建 Perl 語言的動力就來自通過編程解決問題的難度過大,以及自身的“懶惰、急躁和狂妄自大”。還有,John Ousterhout 堅持不懈地尋找更好的語言來創(chuàng)建構(gòu)建集成電路的交互式工具,最后他設(shè)計出了 Tcl。
在短短三個月內(nèi),Van Rossum 就創(chuàng)建了 Python 這種解釋語言的工作原型,他說這個原型缺少現(xiàn)代功能,但仍不失為一種現(xiàn)代的編程語言。
“如今的Python有很多重要的抽象,當(dāng)時沒有,但語言本身看起來還是差不多。”他說。
“當(dāng)時,我只做了解釋器和編程語言的基本組件。一些簡單的能在第一個Python解釋器上運行的程序在如今的Python上仍然有效。”他說,并補充說函數(shù)的定義方式相同,縮進也相同,字典和元組也是用相同的語法創(chuàng)建的,而且還有一個熟悉的交互式提示符,你可以在上面鍵入Python代碼并立即執(zhí)行計算。
雖然Van Rossum的兩位同事在拿到這門語言后立即開始使用,但他本身對進一步的推廣并沒有抱太大期望,因為他們心知肚明在互聯(lián)網(wǎng)出現(xiàn)之前的時代,順利推廣一門編程語言是多么困難。
雖然如今在與整個世界共享軟件時,你只需點擊幾下鼠標(biāo),然而在20世紀(jì)80年代你需要付出更多的努力,Van Rossum想起當(dāng)時(在Python前)發(fā)布ABC時的困難重重。
“記得85年左右,我去美國度假,那是我第一次去美國,我的行李箱里裝滿了磁帶。” Van Rossum說。
他通過當(dāng)時簡陋的基本電子郵件系統(tǒng)找到了對ABC有興趣的人的地址和電話號碼,由于無法通過電子郵件傳輸龐大的源代碼,所以他不得不挨家挨戶發(fā)磁帶。盡管付出了這么多努力,ABC仍然沒能取得成功。
“盡管我們的ABC有很好的特性,但是發(fā)行量依然不理想。”他說。但隨著互聯(lián)網(wǎng)革命的蓬勃發(fā)展,如今無需裝滿磁帶的行李箱,就可以很輕松地分發(fā)Python。 1991年,Van Rossum通過alt.sources新聞組向世界發(fā)布了Python,采用的授權(quán)很像現(xiàn)在的開源許可——盡管直到6年后開源這個詞才首次問世。雖然Python解釋器仍然需要將21個單獨的文件合并成一個壓縮包,而且需要在Usenet網(wǎng)絡(luò)上花一整夜的時間才能下載完畢,但仍然比幾年前的手工發(fā)放方便多了。
“我希望這次能有一點起色,但我之前就經(jīng)歷過一次發(fā)布,而且基本以失敗告終。”他說。
回憶起往昔,Van Rossum表示,過了很久以后他才聽到有關(guān)Python用戶群不斷增長的消息。漸漸地,他感覺到了 Python 崛起的力量,在與 Python 社區(qū)定期互動了一段時間后,他意識到自己創(chuàng)建的這門編程語言可能要成功了。 “我感覺整個過程非常非常緩慢。在我們完成了第一個開源版本后,我一直在堅持定期發(fā)布新版本,并與剛剛興起的 Python 社區(qū)交互。我感覺這非常重要。” Python 成功的原因 20世紀(jì)90年代早期,Python開始備受關(guān)注,感覺Python的時代已經(jīng)到來,Van Rossum也感覺到了。
Van Rossum認(rèn)為開發(fā)人員被Python所吸引的原因與當(dāng)時他創(chuàng)建這門編程語言的初衷一致。他們想要一種高級腳本語言,能夠在方便使用和功能健全之間取得平衡,在處理復(fù)雜邏輯時沒有Unix shell的限制。他們希望結(jié)束開發(fā)人員使用C時繁瑣的內(nèi)存管理,也希望改變每個項目開始之初都需要為相同的基本功能編寫重復(fù)代碼的局面。

Barry Warsaw在1994年的第一次Python研討會上
Warsaw表示,Python保持了語言的方便使用,同時也沒有犧牲功能的健全——在20世紀(jì)90年代早期,任何一門主流的編程語言都未能真正提供這種平衡性。“我嘗試過Perl、Tcl和C編程,感覺都不是很有趣。直到Python的出現(xiàn)讓我眼前一亮,感覺原來編程可以如此有趣。”他說。
Python提供了清晰明確的語法,通過縮進將代碼分組成塊,讓開發(fā)人員更容易理解代碼。
分析公司Gartner的應(yīng)用程序平臺戰(zhàn)略團隊的研究主管Fintan Ryan表示,清晰性在贏得開發(fā)人員方面起著重要的作用,無論是現(xiàn)在還是在20世紀(jì)90年代,即使僅憑縮進實現(xiàn)的清晰性也可以扭轉(zhuǎn)整個局面。“Python提供了一種非常干凈的語法。在使用其他編程語言時你需要強迫人們遵守縮進,但使用Python時這種強制是自動的。有些程序員喜歡這種做法,有些人卻很討厭。”他說。
事實上,Python優(yōu)先考慮代碼清晰性和可讀性并非偶然,Van Rossum表示,對于編程語言來說,開發(fā)人員之間的思想交流與他們和計算機之間的交流同等重要。
除了可讀性之外,Ryan表示,從早期開始,Python就提供了一系列內(nèi)置功能,所以它才能從眾多編程語言之中脫穎而出。“Python從一開始就具有類和異常處理等功能,此外它還提供了lambda、map和filter等輔助函數(shù),事實證明在很多情況下這些功能都非常實用。”他說。
如果80年代后期流行的編程語言出色一點的話,可能Python壓根就不會出現(xiàn)了,因為Van Rossum創(chuàng)建Python的動機之一就是Perl腳本語言與Amoeba分布式計算系統(tǒng)(他在CWI的工作)的不兼容。“對于Python來說,Perl無法移植到Amoeba是一件幸事,”他說,“如果Perl可以移植到Amoeba上的話,我也不會想起創(chuàng)建自己的編程語言。”
盡管Python在發(fā)布后吸引了眾多鐵桿粉絲的用戶群,但在20世紀(jì)90年代,Python仍然是一種不被看好的編程語言。Van Rossum表示,Python的競爭對手有Tcl / Tk和Perl,這兩種編程語言的目標(biāo)與Python相同:簡單易用、功能齊備。
“論90年代排名前三的編程語言的話,Perl以絕對的優(yōu)勢居首位,Tcl / Tk排名第二,而第三名才是Python。”他說。
根據(jù)Stack Overflow的年度開發(fā)人員調(diào)查報告(這是目前最全面的編程語言使用情況調(diào)查)顯示,Python是活躍的開發(fā)人員中間增長最快的編程語言,但報告中甚至都沒有提及Perl。
下圖中Python的爆炸式增長表明,近年來Stack Overflow上有關(guān)Python提問的增長速度遠遠超過了其他編程語言。


那么,究竟Python是如何超越昔日的競爭對手的呢?我們又該如何解釋兩種語言截然不同的命運呢?Van Rossum認(rèn)為,這與代碼庫的增長超過一定規(guī)模后維護代碼庫的容易度有關(guān)。“按人們的經(jīng)驗來看,如果某個腳本只有10行代碼,那么Perl是完美的選擇。”他說,“但是,如果你有500行主線代碼和幾千行庫,那么就需要嚴(yán)加約束才能維護好這些代碼。而在Python,即使沒有那么嚴(yán)格的約束,代碼仍然具備一定的可讀性和可維護性。”
正是這種特性促使Python成為了一種容易上手的編程語言,同時也非常強大,足以編寫大型應(yīng)用程序,因此Van Rossum才在20世紀(jì)90年代取得了初步的成功。 “有一些互聯(lián)網(wǎng)開發(fā)人員(很多是早期的互聯(lián)網(wǎng)工作者),他們編寫的應(yīng)用程序越來越大,而且他們發(fā)現(xiàn)用Python編寫應(yīng)用程序所需要付出的努力遠低于C、C++Java。”
隨著20世紀(jì)90年代Python使用范圍的擴大,仍然在CWI工作的Van Rossum發(fā)現(xiàn)越來越多來自世界各地的人就他的編程語言與他聯(lián)系。
“我創(chuàng)建了一門編程語言,而它與澳大利亞、美國、歐洲等世界各地的人聯(lián)系到了一起。我享受到了生命中的美好時光。”他說。 Python 與 Web 到 20 世紀(jì) 90 年代中期的時候,Python 出現(xiàn)新的使用方式,最初用于音頻的錄制和回放腳本,后來開始涉足 Web 開發(fā)——而 Web 成為了 Python 后續(xù)發(fā)展的支柱。
“這期間的一件大事就是 Web 開發(fā),這對我來說也是一件非常有趣的事情,” Van Rossum 說道,人們開始用 Python 編寫 Web 服務(wù)器上的后端腳本(就像 Perl 和 Shell 腳本一樣)。他說,“你可以創(chuàng)建動態(tài)網(wǎng)頁,這是我最喜歡的 Python 應(yīng)用程序之一。”
Gartner 的 Ryan 說,在 20 世紀(jì) 90 年代,Python 在開發(fā)人員中間流行的原因就在于它是快速創(chuàng)建強大腳本的最佳選擇。“作為一門功能強大的腳本語言,Python 降低了許多用戶的門檻。”他說。
不僅如此,Ryan 還說這門語言的功能多樣化,且容易上手,因此吸引了許多擁有不同技術(shù)專長的各類用戶。“系統(tǒng)管理員和其他人采用 Python 實現(xiàn)系統(tǒng)自動化和編程,開發(fā)人員喜歡它的函數(shù)式編程、支持繼承的類等特性—— 而其他語言,例如 Perl,這方面的功能相對就弱一些,”他說,“這門編程語言的學(xué)習(xí)曲線很低,而且一旦上手,就會迅速提高工作效率。”
1994 年,Python 引起了 Michael McLay 的注意,他曾在當(dāng)時的美國國家標(biāo)準(zhǔn)局(NBS)(現(xiàn)在的美國國家標(biāo)準(zhǔn)與技術(shù)研究院(NIST))擔(dān)任高級職務(wù)。McLay 的關(guān)注預(yù)示著 Python 將受到研究人員和科學(xué)家的青睞——他認(rèn)為 Python 簡單易用,非常適合 NBS 的科學(xué)家使用,Van Rossum 說,“這些科學(xué)家需要處理大量的數(shù)據(jù),但他們都不熟悉編程。”
為了在 NBS 內(nèi)的其他人中推廣 Python,McLay 邀請了當(dāng)時仍在荷蘭 CWI 工作的 Van Rossum 到 NIST,作為客座研究員工作了兩個月。事實證明,此次安排給 Python 未來的發(fā)展和 Van Rossum 的生活帶來了重大變化。
在 Van Rossum 這兩個月的工作期間,NBS 舉行了第一次 Python 研討會,Van Rossum、Barry Warsaw 和其他早期的 Python 愛好者聚集在一起討論Python 的使用,以及這門語言未來的發(fā)展。
在 NBS 的辦公室里,Van Rossum 遇到了 Bob Kahn——此人開發(fā)了互聯(lián)網(wǎng)的一項基礎(chǔ)技術(shù):TCP / IP 協(xié)議。
在此次會議上,Van Rossum 收到了邀請,前往美國全國研究創(chuàng)新聯(lián)合會(CNRI,這是一家位于弗吉尼亞州的非營利性研究組織,專注于網(wǎng)絡(luò)技術(shù)的戰(zhàn)略發(fā)展)與 Kahn 一起工作。
雖然 Python 已經(jīng)滿足了新型編程語言的需求,但 Van Rossum 表示他開始質(zhì)疑自己在 CWI 的發(fā)展前景,而這個工作機會的出現(xiàn)恰逢其時。
“CWI 是一個學(xué)術(shù)機構(gòu),我感受到了一定的壓力,要么攻讀博士學(xué)位,要么就需要另謀高就。”他說。
“當(dāng)時我已經(jīng)35歲了,在這個年紀(jì)攻讀博士學(xué)位并非我所愿。早些時候,由于 Python 的原因,我也收到過很多工作機會,但是經(jīng)過電話交談和慎重的考慮后,我還是決定留下。但是,此次機會十分難得,我喜歡這些人,喜歡他們提出的條件以及項目,所以我動搖了。”
Van Rossum 在加入 CNRI 以后,在一個 Python 愛好者團隊的幫助下建立了許多管理 Python 語言的結(jié)構(gòu)。1995年4月,Van Rossum 加入 CNRI,他開始帶領(lǐng)一個小團隊的開發(fā)人員致力于構(gòu)建 Knowbot 程序——該軟件被稱為“移動代理”,旨在跨分布式計算機系統(tǒng)(如互聯(lián)網(wǎng))上運行。
該團隊的工作采用了 Python,除了 Van Rossum 之外,還有 Jeremy Hylton、Roger Masse、Barry Warsaw、Ken Manheimer 和 Fred Drake,所有人都在 Python 社區(qū)中發(fā)揮著重要的作用。
“最終我們組建了一支4-10人的團隊,其中大多數(shù)人都是在CNRI工作,他們是Python開發(fā)的核心力量。”Van Rossum說。
Van Rossum在CNRI工作期間,這個團隊幫助他創(chuàng)建了python.org網(wǎng)站、管理核心代碼庫變動的CVS服務(wù)器,還建立了改進和維護Python語言的特別小組郵件列表。
自1991年公開發(fā)布以來,Python用戶社區(qū)的增長非常顯著,到本世紀(jì)下半葉時,該編程語言已經(jīng)吸引了大批全球用戶群。在此期間,該編程語言的管理開始步入正規(guī),同時還于2001年建立了Python軟件基金會(PSF)的前身。隨著社區(qū)的發(fā)展,于1994年開始的兩年一度的Python研討會演變成了盛大的年度活動,還有如今仍在盛行的由PSF主辦的Python年度大會。
到21世紀(jì)之交,Python編程語言空前壯大,龐大的社區(qū)在其發(fā)展中發(fā)揮著積極的作用。回想1994年的那個夏天,早期的Python用戶還在擔(dān)心如果Guido發(fā)生意外,這門編程語言該何去何從(請參考《如果Guido被公共汽車撞了》,https://legacy.python.org/search/hypermail/python-1994q2/1040.html)。
然而,Van Rossum一直在Python語言的發(fā)展中發(fā)光發(fā)熱,而且他的思想在該編程語言發(fā)展中依然處于核心地位,因此大家都親昵地稱呼他為“仁慈的獨裁者”,多年以來這個半開玩笑的頭銜一直陪伴著他。
“長期以來,在大多數(shù)時候,我都能夠承受這些壓力,而且我也具備了管理項目的能力,我可以將很多工作委派出去,讓人們掌握自己的命運。”Van Rossum說。
Gartner的Ryan表示,由編程語言的創(chuàng)始人出面管理語言的情況并不常見,參考一下Larry Wall和Perl以及Ryan Dahl的JavaScript運行時Node.js就可見一窺,但大家都認(rèn)為Van Rossum管理Python的方式很公平。
“大家都認(rèn)為他能夠在整體的管理工作中,很好地平衡項目的方向。”
事實上,Van Rossum認(rèn)為Python成功的決定性因素在于Python開發(fā)中的開放性,而這種開發(fā)性建立在核心開發(fā)人員社區(qū)之間的公開討論之上。 Python 的演變 在此期間,Python 取得了重大飛躍,2008 年 Python 3.0 的引入讓該編程語言走向了現(xiàn)代化,然而,近期該編程語言的管理方式也發(fā)生了重大改變。
有些變化始自去年,當(dāng)時 Van Rossum 辭去了作為“仁慈的獨裁者”的領(lǐng)導(dǎo)身份,因為公眾在 Python 引入賦值表達式的問題上產(chǎn)生了分歧(請參照 Python 改進方案 PEP572,https://www.python.org/dev/peps/pep-0572/)。
雖然引入該功能的目的是編寫更有效的代碼,但 Van Rossum 在網(wǎng)上遭到了那些反對變革的人的嚴(yán)厲批評,有些人認(rèn)為該功能會降低代碼的可讀性,且難以維護。
Van Rossum 表示,他習(xí)慣了有關(guān)新功能的爭論,但他不愿與某些詆毀他的人妥協(xié),而某些攻擊者的人品致使他下決心辭職。
“我感到非常失望,有人在技術(shù)上有不同的看法,就去社交媒體上咆哮說 Python 的決策過程遭到了破壞,或者說我犯了極其嚴(yán)重的錯誤。我感覺背后被人擺了一道。”他說。
“過去,大家都很清楚,如果需要在語言上做出某些改變或改進某個功能,那么就需要經(jīng)由一大堆核心開發(fā)人員討論這些變化的利弊。有時大家會達成明確的共識,有時無法取得統(tǒng)一的意見,那么我就在腦海中仔細考慮,并做出決定。在 PEP572 的問題上,盡管存在明顯的爭議,但我做出了選擇:我想引入這個功能,而且大家也沒有說不同意。”
“我不想撂挑子不干了,但我覺得我沒有獲得足夠的核心開發(fā)者社區(qū)的信任,無法再領(lǐng)導(dǎo)整個團隊繼續(xù)前進。”
他認(rèn)為,有關(guān)語言的爭論方式的變化部分是因為如今使用 Python 的人數(shù)過于龐大。
“可能是因為 Python 社區(qū)的規(guī)模過于龐大。這些人之間很難達成共識,因為無論你做出怎樣的決定,總有一些持異議的人士。”
今年早些時候,Python 核心開發(fā)人員(那些致力于維護和更新 Python 使用的 CPython 解釋器的人)選出了一個指導(dǎo)委員會來監(jiān)督該語言的發(fā)展。Van Rossum 與 Warsaw 以及核心開發(fā)人員 Brett Cannon、Carol Willing 和 Nick Coghlan 一起當(dāng)選。
Warsaw 表示,為了管理 Python 增長速度如此迅速的用戶群,這種變化是必要的。
“我感覺 Guido 想憑一己之力挑起整個世界。”他說。
“放在 25 年前,當(dāng)時 Python 還是一個很小的語言,社區(qū)規(guī)模也很小,一個人管理也沒問題。但今非昔比,而且我覺得為他的個人健康考慮,應(yīng)當(dāng)讓社區(qū)的五個人共同分擔(dān)這項重任。”Warsaw 說。
在每次新 Python 功能發(fā)布后,指導(dǎo)委員會都會進行新一屆的選舉,Warsaw 表示,這可以為下一任領(lǐng)導(dǎo) Python 發(fā)展的人鋪平道路。
“即便從現(xiàn)在開始 25 年后 Python 仍將健康發(fā)展,那么屆時也不是我和 Guido 所能管轄的世界了。”他說。
廣大的 Python 核心開發(fā)人員社區(qū)非常歡迎指導(dǎo)委員會的設(shè)立,核心開發(fā)人員Mariatta Wijaya 表示,此舉意味著 Python 朝著正確的方向邁出了一步。“對我來說,通過委員會來共同做決定好過讓一個人全權(quán)決定,畢竟這份責(zé)任和負擔(dān)太大了。”她說,“這是一個好兆頭,社區(qū)可以聽到更多人的心聲。” Python 的未來 雖然 Python 持續(xù)以驚人的速度吸引著新用戶,但社區(qū)中的有些人預(yù)見到了未來的挑戰(zhàn),如果想維持 Python 的高度關(guān)注,那么就必須不斷發(fā)展。
在今年的 Python 語言峰會上,BeeWare 的聯(lián)合創(chuàng)始人 Russell Keith-Magee 發(fā)出了警告,如果 Python 無法改善對移動和新網(wǎng)絡(luò)平臺的支持,那么就可能面臨“生死存亡的風(fēng)險”。
手機和平板電腦對市場的滲透力是臺式機和筆記本電腦無法比擬的,但作為一個社區(qū),我們卻未能提供在這些設(shè)備上使用 Python 的渠道。”他說。他調(diào)查了他兒子在學(xué)校使用 iPad 的情況,他問:“如果筆記本電腦被小型設(shè)備取代,那么 Python 該何去何從?”
Keith-Magee 希望通過 BeeWare 的項目,編寫一個 Python 應(yīng)用程序,并在所有設(shè)備上運行,解決目前 Python 無法支持標(biāo)準(zhǔn) x86 PC 之外的平臺的問題。 他表示,Python 需要更好地支持在非 x86 的新興硬件平臺上編譯代碼;Python 的測試套件容易在移動和 Web 平臺上崩潰;Python 應(yīng)用程序的安裝過大,且無法縮減到一小部分的依賴項;在 Android、Windows 和 Web 上編寫 GUI 代碼時,使用 asyncio 庫需要付出額外的工作量;標(biāo)準(zhǔn)庫中存在大量無法與 CPython 以外的 Python 解釋器兼容的模塊。
Warsaw 表示,Keith-Magee 提出的意見非常中肯,而且他相信考慮 Python 與新平臺(包括手機、平板電腦和 WebAssembly 等新技術(shù))的關(guān)聯(lián)性非常重要。 “現(xiàn)在,Python 并沒有一個很好的途徑,”Warsaw 表示他希望有一天用戶通過 iPhone 或 Android 手機下載應(yīng)用時“從來不知道該應(yīng)用是用 Python 編寫的。”
隨著現(xiàn)代芯片內(nèi)部處理器核心數(shù)量的不斷攀升(英特爾最新的服務(wù)器中核心的數(shù)量高達 48 個),Warsaw 也希望看到 Python 能夠更好地處理多核心上的分散任務(wù)。
他對 Eric Snow 在子解釋器上的工作進展,以及擴展 Python 并行運行代碼的能力充滿了期待。“我真心希望看到 Python 能夠利用多核心完成更多工作的能力。”他說。
Snow 參與了一個長期項目,旨在提高 Python 在多個處理器核心之間有效地分割任務(wù)的能力,Snow 的主要工作是重新編寫 Python 現(xiàn)有的子解釋器功能,并改變每個子解釋器與 Python 全局解釋器鎖交互的方式。
Warsaw 說:“這個項目應(yīng)該不會在 Python 3.8 上發(fā)布,可能 3.9 也來不及。“我估計我們會在兩年到兩年半以后看到它。我非常樂觀。我很高興 Eric 依然在努力,因為我認(rèn)為這個工作非常重要。”
他說,即使是那些嘗試在多個核心上運行多線程 Python 應(yīng)用程序的失敗項目,例如 The Gilectomy,也可以讓我們吸取有意義的經(jīng)驗教訓(xùn),說明 Python 可以在多個核心之間分散工作負載方面有更出色的表現(xiàn)。
Python 社區(qū)還采取措施,提高了語言內(nèi)置代碼標(biāo)準(zhǔn)庫的現(xiàn)代化水平,最近他們發(fā)表了一項提議,建議從庫中刪除過時模塊。這樣做是為了應(yīng)對最近對 Python 標(biāo)準(zhǔn)庫的一些批評。該庫常常被當(dāng)作 Python 的優(yōu)勢之一,因為它可用于執(zhí)行廣泛的常見任務(wù),這就是為什么 Python 被稱為“自帶電池”的原因。然而,在今年的 Python 語言峰會上,有人在演講中說,應(yīng)該允許人們從 PyPI 中選擇庫,而不應(yīng)該作為標(biāo)準(zhǔn)庫與語言捆綁在一起,這樣 Python 才能更好地服務(wù)于人。
還有一些問題是,負責(zé)語言開發(fā)的 Python 核心開發(fā)人員和 Python 指導(dǎo)委員會是否可以更好地代表 2019 年 Python 用戶群的多樣性。
Wijaja 說:“我希望看到各個方面表現(xiàn)出更多的代表性,不僅僅是性別的平衡,還包括種族和其他一切。”
“在 Python 大會上,我與來自印度和非洲的 PyLadies(Python 女性聯(lián)盟組織)成員進行了交談。她們說,‘當(dāng)聽說 Python 或 PyLadies 時,我們就會想到北美或加拿大人,實際上世界其他地方也有很多用戶群。為什么我們看不到呢?’我認(rèn)為她們說得很有道理。我肯定也希望看到更多的用戶群,我認(rèn)為我們都需要盡自己的責(zé)任。”
Warsaw 說,盡管外間流傳著讓一位“仁慈的獨裁者”掌管一切的玩笑話,但近年來改變 Python 的想法皆源自社區(qū)中,他們敞開大門歡迎新用戶的到來,并推動 Python 的使用。
“整個社區(qū)是從底層向上構(gòu)建的,而不是自上而下的命令。”他說。
說到社區(qū)項目對 Python 產(chǎn)生的巨大影響,我想到了一個例子 Type Hints,這是一個 Python 3.5 的功能,該功能受到了 2012 年由某個博士生創(chuàng)建的 mypy 項目的啟發(fā)。這些提示允許可選類型的檢查,可以讓開發(fā)人員發(fā)現(xiàn)一類其它方式很難發(fā)現(xiàn)的 Bug。
當(dāng)多個人在大型代碼庫上工作時,這個額外的防護層絕不僅僅是錦上添花,這種對于代碼應(yīng)該做什么、不應(yīng)該做什么的額外規(guī)定可以產(chǎn)生重大影響。
“在我看來,讓 Python 在更大的組織中得以應(yīng)用的機會非常珍貴。比如 Instagram,他們基本上用的都是 Python 3。”Warsaw 說。他還說 asyncio 是社區(qū)想法對語言產(chǎn)生巨大影響的另一個例子。
有了指導(dǎo)委員會,以及前所未有的龐大用戶群,Van Rossum 樂觀地認(rèn)為“社區(qū)驅(qū)動的語言演變”將會繼續(xù)“非常成功”。
“我們有非常可靠的核心開發(fā)人員社區(qū),現(xiàn)在這個社區(qū)有了新的治理系統(tǒng),因此我認(rèn)為我們已經(jīng)做好了準(zhǔn)備迎接任何語言發(fā)展的需求。”他對社區(qū)在 Python 特定方面的深刻認(rèn)識表示贊許。
Warsaw 表示,如果有人懷疑 Python 社區(qū)能否繼續(xù)為這種編程語言找到令人震驚的新用途,那么可以了解一下 Python 在幫助捕獲首張黑洞照片方面時發(fā)揮的作用。
“我對此感到非常震驚。我認(rèn)為 Python 社區(qū)中有幾個人是瘋狂的 Python 科學(xué)家。他們總是在尋找新機會——如今我們能做的就這么多,那么今后還能走得更遠嗎?”

-END-

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 編程
    +關(guān)注

    關(guān)注

    88

    文章

    3633

    瀏覽量

    93853
  • 編程語言
    +關(guān)注

    關(guān)注

    10

    文章

    1947

    瀏覽量

    34848
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4801

    瀏覽量

    84863

原文標(biāo)題:崛起的Python正在蠶食編程語言界!

文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    字節(jié)跳動否認(rèn)與中興通訊合作傳聞

    近日,有關(guān)字節(jié)跳動旗下豆包大模型內(nèi)嵌手機并與中興通訊探討成立新品牌的消息引發(fā)了市場的廣泛關(guān)注。然而,字節(jié)跳動方面對此明確予以否認(rèn),稱并未與中興通訊就上述事宜展開討論。 據(jù)字節(jié)跳動官方澄清,盡管豆包
    的頭像 發(fā)表于 12-18 10:08 ?457次閱讀

    Prolith和HyperLith的優(yōu)劣勢

    Prolith和HyperLith在光刻領(lǐng)域的優(yōu)劣勢,可以展開討論討論
    發(fā)表于 11-29 22:12

    現(xiàn)代智能建筑中電氣火災(zāi)安全監(jiān)控管理的解決方案

    文章就濱河商務(wù)建筑項目展開討論,針對項目中的電氣火災(zāi)監(jiān)控問題提出電氣火災(zāi)監(jiān)控系統(tǒng)設(shè)計與應(yīng)用、網(wǎng)絡(luò)設(shè)計、系統(tǒng)監(jiān)控設(shè)計、系統(tǒng)監(jiān)測、數(shù)據(jù)收集和分析、遠程監(jiān)控等相關(guān)措施,以強化電氣火災(zāi)監(jiān)控水平,降低用戶使用風(fēng)險。
    的頭像 發(fā)表于 10-24 10:55 ?250次閱讀

    特斯拉獲xAI模型授權(quán)

    近日,埃隆·馬斯克旗下的創(chuàng)新企業(yè)x.AI與特斯拉就一項重大合作展開討論,雙方擬就特斯拉獲得xAI模型授權(quán)達成正式協(xié)議。據(jù)悉,特斯拉利用這一前沿AI技術(shù),加速其“完全自動駕駛”(FSD)系統(tǒng)的研發(fā)進程,進一步提升自動駕駛技術(shù)的智能化水平。
    的頭像 發(fā)表于 09-09 17:24 ?446次閱讀

    pytorch和python的關(guān)系是什么

    ,PyTorch已經(jīng)成為了一個非常受歡迎的框架。本文介紹PyTorch和Python之間的關(guān)系,以及它們在深度學(xué)習(xí)領(lǐng)域的應(yīng)用。 Python簡介 Python是一種高級、解釋型、通用
    的頭像 發(fā)表于 08-01 15:27 ?2124次閱讀

    武漢凱迪正大分享電纜電力檢測方法及其優(yōu)缺點

    隨著技術(shù)的發(fā)展和進步電纜電力檢測方法也日益多樣化,涵蓋了從傳統(tǒng)的電橋法到現(xiàn)代的局部放電法、紅外熱像法等多種技術(shù)手段。本文依照凱迪正大的經(jīng)驗圍繞電纜電力檢測的主要方法展開討論,并分析其各自的優(yōu)缺點。
    的頭像 發(fā)表于 07-24 17:28 ?365次閱讀

    Python建模算法與應(yīng)用

    上成為理想的腳本語言,特別適用于快速的應(yīng)用程序開發(fā)。本文詳細介紹Python在建模算法中的應(yīng)用,包括常見的建模算法、Python在建模中的優(yōu)勢、常用庫以及實際案例。
    的頭像 發(fā)表于 07-24 10:41 ?605次閱讀

    Python在AI中的應(yīng)用實例

    Python在人工智能(AI)領(lǐng)域的應(yīng)用極為廣泛且深入,從基礎(chǔ)的數(shù)據(jù)處理、模型訓(xùn)練到高級的應(yīng)用部署,Python都扮演著至關(guān)重要的角色。以下詳細探討Python在AI中的幾個關(guān)鍵應(yīng)用
    的頭像 發(fā)表于 07-19 17:16 ?1233次閱讀

    使用Python進行自然語言處理

    在探討使用Python進行自然語言處理(NLP)的廣闊領(lǐng)域時,我們首先需要理解NLP的基本概念、其重要性、Python在NLP中的優(yōu)勢,以及如何通過Python實現(xiàn)一些基礎(chǔ)的NLP任務(wù)。本文將從這些方面
    的頭像 發(fā)表于 07-04 14:40 ?477次閱讀

    夏普討論建立人工智能數(shù)據(jù)中心

    近日,夏普公司宣布與KDDI公司達成重要合作意向,雙方針對建立人工智能數(shù)據(jù)中心進行深入討論。據(jù)悉,此次合作圍繞英偉達的人工智能計算平臺和Supermicro平臺展開,共同探索人工智
    的頭像 發(fā)表于 06-05 09:17 ?490次閱讀

    谷歌瞄準(zhǔn)企業(yè)云應(yīng)用市場,擬收購HubSpot

    路透社在四月底透露,Google計劃收購HubSpot,并已與摩根士丹利的投資銀行家展開討論,以確定最佳收購策略及監(jiān)管部門對這筆交易的審批情況。
    的頭像 發(fā)表于 05-30 09:48 ?417次閱讀

    Nuro和Arm攜手針對L4級自動駕駛技術(shù)展開為期多年的合作計劃

    Nuro 和 Arm 攜手針對 L4 級自動駕駛技術(shù)展開為期多年的合作計劃,Nuro 采用 Arm 領(lǐng)先的汽車技術(shù)去升級Nuro Driver
    的頭像 發(fā)表于 02-29 13:38 ?1108次閱讀

    基于Python的地圖繪制教程

    本文介紹通過Python繪制地形圖的方法,所需第三方Python相關(guān)模塊包括 rasterio、geopandas、cartopy 等,可通過 pip 等方式安裝。
    的頭像 發(fā)表于 02-26 09:53 ?1272次閱讀
    基于<b class='flag-5'>Python</b>的地圖繪制教程

    ELF 1技術(shù)貼|如何Python3.6.9移植到開發(fā)板上

    在ELF1開發(fā)板的Linux4.1.15eMMC鏡像中,默認(rèn)預(yù)裝了Python2.7。為了適應(yīng)更多應(yīng)用場景,有些小伙伴可能需要移植其他版本的Python,下面將以Python3.6.9為例詳細介紹
    的頭像 發(fā)表于 02-22 14:06 ?451次閱讀
    ELF 1技術(shù)貼|如何<b class='flag-5'>將</b><b class='flag-5'>Python</b>3.6.9移植到開發(fā)板上

    如何使用linux下gdb來調(diào)試python程序

    中,我們介紹如何在Linux中使用GDB來調(diào)試Python程序。 一、安裝GDB和Python調(diào)試符號 在使用GDB調(diào)試Python程序之前,需要安裝GDB和
    的頭像 發(fā)表于 01-31 10:41 ?2682次閱讀
    主站蜘蛛池模板: 操日韩美女| 成 人 a v黄 色| 亚洲黄色一区二区| 亚洲 欧美 校园| 天天黄色| 国产午夜三区视频在线| 午夜视频免费观看黄| 色宅男| 国内精品91久久久久| xxxx日本xx| 狠狠色噜噜狠狠狠狠97不卡 | 国内亚州视频在线观看| 成年人一级片| 日韩第十页| 婷婷九月色| 久久九色| 202z欧美成人| 曰本又色又爽又黄三级视频| 性欧美大战久久久久久久久| 欧美一区二区三区免费看| 日韩精品毛片| 九月丁香婷婷| 站长工具天天爽视频| 男女啪视频大全1000| 性xxxxhd高清| 自拍偷自拍亚洲精品被多人伦好爽| 特级生活片| 国模视频一区| 日日插夜夜爽| 亚洲一区二区三区免费| 婷婷天堂| 黄色大片网| 天天操天天射天天爽| 2019天天操夜夜操| 韩国美女丝袜一区二区| 色成网| 97影院理论片在线观看| 国产香蕉一区二区精品视频| 老熟女毛片| 欧美乱论视频| 韩日精品|