一些很棒的Python應(yīng)用程序

我們可以從180多個成功發(fā)布的Python軟件案例中學(xué)到什么。

我很高興地發(fā)布一些很棒的Python應(yīng)用程序,這是一個手工整理的180多個項目的列表,所有這些都是:

一些很棒的Python應(yīng)用程序

1.帶有在線源代碼倉庫的免費軟件。

2.用Python實現(xiàn)它們的大部分功能。

3.眾所周知的,或至少在一個特定領(lǐng)域中非常流行。

4.在相關(guān)平臺上持續(xù)維護(hù)或仍然運行良好。

5.已經(jīng)打包好的應(yīng)用程序,而不是庫或框架。

這個軟件列表主要專注于那些不需要使用pip或PyPI安裝的軟件,其受眾大多不是開發(fā)人員。本列表收集了很多這樣的軟件,當(dāng)然還有少數(shù)是例外的,具體數(shù)量請查看此列表(地址:https://github.com/mahmoud/awesome-python-applications#awesome-python-applications)。

那么,我為什么要花費數(shù)周時間來歸類整理這些開源Python應(yīng)用程序呢?

除了節(jié)日的喜悅,還有三大原因。

目錄

  1. 目標(biāo)#1:更好的開發(fā)周期

  2. 目標(biāo)#2:更完整的Python生產(chǎn)循環(huán)

  3. 目標(biāo)#3:構(gòu)建Python生態(tài)基礎(chǔ)

  4. 接下來的步驟

目標(biāo)#1:更好的開發(fā)流程

從我開始討論Python打包問題以來,人們就一直在問我,哪種打包技術(shù)最適合他們的軟件。這一次又一次地讓我感到震驚,如果不搞清楚交付的基礎(chǔ)問題,那么人們開發(fā)程序的時候能走多遠(yuǎn)?在探索這個問題時,我遇到了一個更基本的問題:

為什么那么多人從基本原理開始(博客文章和Stack Overflow)構(gòu)建應(yīng)用程序?

Python難道不是軟件界鼎鼎大名的名字之一嗎?不是有許多成功的、實際應(yīng)用的應(yīng)用程序是用Python編寫的嗎?你的應(yīng)用程序完全獨特的機會有多大?

因此,出色的Python應(yīng)用程序?qū)嶋H上是為回答棘手的開發(fā)問題開辟了一個新的流程。

在構(gòu)建應(yīng)用程序時,掃描此列表以找到那些最符合你的項目需求的項目。然后,使用該應(yīng)用程序作為回答自己問題的指南。這對于有關(guān)架構(gòu)、部署和測試的抽象問題尤其有效。

回到學(xué)校,我從MediaWiki源代碼中學(xué)到的架構(gòu)和軟件開發(fā)知識比從任何課程中學(xué)到的都多。它一直激勵著我直到今天。APA是實現(xiàn)面向?qū)嶋H用戶的工作應(yīng)用程序的整體教育的下一步。

簡而言之,雖然我們可能沒有時間來編寫它們,但是每個生產(chǎn)應(yīng)用程序都抵得上1000篇博客文章。

目標(biāo)#2:更完整的Python生產(chǎn)循環(huán)

我們Python程序員也是軟件用戶。但與其他軟件用戶不同的是,我們知道如何將問題歸檔,甚至可能對我們選擇的應(yīng)用程序做出重大貢獻(xiàn)。

如果可能的話,選擇Python軟件,我們就更接近于參與其中。對于未來的應(yīng)用程序開發(fā)人員來說,還有什么更好的入門方法呢?

一些很棒的Python應(yīng)用程序

我很愿意看到更多的開發(fā)人員與他們沒有意識到是用Python開發(fā)的軟件產(chǎn)生聯(lián)系。當(dāng)我知道我最喜歡的應(yīng)用程序之一, Deluge,大量使用twisted后,這極大地鼓舞了我對Twisted做出貢獻(xiàn)。使用自由軟件會創(chuàng)造更多的自由軟件。

目標(biāo)#3:構(gòu)建Python生態(tài)基礎(chǔ)

隨著科技的發(fā)展,軟件越來越復(fù)雜。底層實現(xiàn)開發(fā)人員與應(yīng)用程序開發(fā)人員已經(jīng)分離開來,隨著時間的推移,這將導(dǎo)致更糟糕的軟件。當(dāng)應(yīng)用程序得不到開發(fā)人員的關(guān)注時,這個問題就更加復(fù)雜了。大多數(shù)APA條目都有兩位數(shù)或者三位數(shù)的關(guān)注,除非該軟件的目標(biāo)用戶是很專業(yè)的技術(shù)人員。APA中的軟件很少由PyPI分發(fā),因此下載統(tǒng)計數(shù)據(jù)也不能幫助我們。即使有幫助,底層庫的關(guān)注數(shù)據(jù)也遠(yuǎn)不如應(yīng)用軟件的數(shù)據(jù)好看。同時,由于自由軟件項目不能離開大量的捐贈或會議贊助,因此這些底層庫由于難以宣傳,又進(jìn)而導(dǎo)致了經(jīng)濟(jì)上難以為繼。

這些應(yīng)用程序代表了Python的免費和有生命力的部分中最好的部分。它們不僅是實用和自豪的源泉,而且在精神和實踐上需要我們的支持。我真誠地希望APA將有助于Python社區(qū)關(guān)注實用應(yīng)用程序的開發(fā)。

具體來說,這意味著什么?敏銳的眼睛會注意到列表是如何進(jìn)行結(jié)構(gòu)化的。這不僅是為了保持一致性,也是一次對數(shù)據(jù)集API的嘗試。我們必須考慮到庫和應(yīng)用程序之間的關(guān)系,并且來探索我們的生態(tài)系統(tǒng)。

我知道我在這里有點冒險,度量標(biāo)準(zhǔn)并不是一切,但是將Python FOSS生態(tài)系統(tǒng)作為科學(xué)發(fā)布框架的模擬來探索將是非常有趣的。我們是否可以通過將庫視為“文章”,將應(yīng)用程序視為“期刊”來獲得或多或少的開發(fā)人員赫芬達(dá)爾指數(shù)(h-index)?添加一些應(yīng)用程序用戶基礎(chǔ)近似值(通過社會替代計量學(xué)和其他方法)可以讓我們更深入地了解實際應(yīng)用的效果。

接下來的步驟

如果這篇文章看起來比我通常寫的短,那是因為它確實是對列表本身的介紹。在進(jìn)行研究的過程中,我被幾個項目的代碼庫纏住了,你也會被纏住的。

如果我們錯過了一個項目,請在GitHub上開啟一個問題或PR。如果你和我一樣對此感到興奮,可以考慮幫助解決一些懸而未決的問題。仍然有許多應(yīng)用程序特性需要研究:許可證、Python版本、框架等等。和往常一樣,關(guān)注本博客(和代碼倉庫)的更新,因為我們會有更多的發(fā)現(xiàn)!

英文原文:https://sedimental.org/awesome_python_applications.html
譯者:浣熊君( ????? )

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 假如你是李華,今年上初三了,現(xiàn)在的生活和以前大不一樣了。請你根據(jù)自身的情況寫一篇文章介紹一下自己的變化。詞數(shù):60...
    咚呱英語培訓(xùn)閱讀 526評論 0 2
  • 做概率題很有感覺啦,定下做題策略--最快的速度搞完概率和線代,然后再搞定微積分學(xué)。至于高數(shù)的話,慢慢折騰吧,后期晚...
    光_武閱讀 260評論 0 0
  • 雨。 今天應(yīng)該是這幾天中心情最好的一天了。 上午到中午的憲法課,依舊選擇了cj,cy,果然,感情是吃出來的。 買了...
    Cheryl_ak717閱讀 253評論 0 0
  • 正好第六周趕上了加拿大國慶,漫長的一天終于要結(jié)入尾聲。 這周踐行體會... 好像還是怠慢了很多,睡覺時間越來越晚,...
    A4_小C閱讀 211評論 0 0

友情鏈接更多精彩內(nèi)容