Python語言在開發社區中的熱議簡介
Python經過長時間的發展,很多用戶都很了解Python的實際應用操作,這里我發表一下個人理解,和大家討論討論。希望大家通過瀏覽以下的文章會有所收獲,以下Python語言的應用及開發社區熱議的介紹。
Collin Winter是Python社區一位頗具影響力的開發者,他曾是CPython項目的核心開發者之一、也曾是Unladen Swallow(見文末注釋)的核心開發者,參與了很多Python項目的開發。近來傳聞Google將在其新項目中限制Python的使用,為此有開發 者(以K表示)在Google 論壇中公開詢問了Collin Winter,Collin Winter就很多尖銳的問題做了解答。這篇帖子同時也吸引了很多高質量的跟帖。
Google將在其新項目中限制Python的使用,無疑這將大大減少Python代碼和Python得到的支持。是否確有其事還是只是謠傳?
Collin Winter:的確,Google將限制Python語言的應用因為:Python不如Java和C++快,線程占有、內存使用都很高在使用Python開發 新系統的時候,我們深知如果負載增加了10倍或者100倍系統會怎樣,開發出的服務會有多糟糕我想Python已經發展到了一個狹縫中,因此在選擇時我們 應當權衡其優點和缺點,也許開發人員使用Python會很有效率,但隨著系統的增大卻會遇到許多平臺級的性能限制。#t#
Unladen Swallow會改變這一切么?你的期望是什么呢?
Collin Winter:Unladen Swallow旨在盡可能地將Python用在更多它現在尚未涉足的地方,而且Unladen Swallow也并非包治百病的靈丹妙藥。如果沒有人給Python注入投資,Python將仍舊比C和Java慢、占用更多的內存和線程。我希望開發者 對Python的關注能夠形成一個良性循環:越多的開發者感興趣、越多的公司干興趣,就有越多的投資注入,從而開發出更多的Python資源。
我認為Python及其他動態語言***的一點就是:許多開發者工作于不同的子系統,但都為同一個代碼基工作。而C或者C++語言則不同,參與的開發 者越多,代碼基就越支離破碎。從這個角度來說動態語言更加易于sandbox操作。這種敏捷和靈活是Python語言的重要特性。
Python的確是比C和Java慢,但它比較起v8 JavaScript引擎如何,是否會是后者的競爭對手呢?
Collin Winter:我認為像CPython之類的應用不可能像V8或者SquirrelFish Extreme那樣快,畢竟后兩者是專為速度而生的。我們也曾遇到一些高速性能方面的優化卻很難配置到CPython中,因而只能放棄。作為開源項目的志 愿者,CPython跟V8的側重點不一樣:CPython強調的是簡單,也即簡單、稍慢的內核便于人們在業余時間維護。
對于Python的另一個項目PyPy我倒是有很高的期望,希望它能擺脫C-level向后兼容的束縛而提供長久的性能解決方案。但這個愿望可能需要十年來實現。
Python為什么考慮的是人們在業余時間的維護?
Collin Winter:CPython開發人員很少是有報酬的,幾乎全部是志愿者,而Ruby開發者卻能夠從EngineYard等贊助商那里獲得基金,因而當他 們意識到MRI伺服web應用很慢時,他們可以更好地開發他們的VM。這也決定了我們開發的東西更加照顧大多數人的需求。
一位名叫Leon Sit的開發者在這里補充道:我認為當系統增大時,CPython除了在數字碼方面表現不錯之外其他的都差強人意。而且,CPython依賴C編輯器而 Windows系統根本沒有C編輯器。為了提高CPython的速度,就需要添加打印信息而它們涉及的語法卻非Python語言的標準語法。