Web 開發中,Python 和 PHP 哪個有優勢?為什嗎?

來源:互聯網
上載者:User
對非工程師而言,如何簡明扼要的向其解釋選擇python而非php?

比如PM討論中問起,比如老闆開會忽然問起,比如同群組成員需要偶爾讀一下代碼的問起

回複內容:

所謂膠水語言不是蓋的,當你有一些比較奇葩的類包要調用時你就知道Python的好了。在做一個分享基因資料的伺服器,裡面要隨機讀取一些很奇葩的基因檔案,剛好Python有個包可以實現這個功能。用Python的感覺就是你什麼都能解決。學習曲線來說PHP也不是說完爆Python,到最後你還是要用到架構。《社交網路》裡,當划船那倆雙胞胎兄弟還在深思熟慮、琢磨著到底該怎麼實現自己那激動人心的宏偉目標時,紮克伯格用兩星期的時間就真正把這個社交平台給實現了。

所以我的推薦是:你應該繼續討論、琢磨下去。
非常不推薦的是,哪個上手快,哪個更容易快速開發、快速實現,眼光一定要放長遠,那個..我們再開個會討論討論怎麼樣?快速開發選php,要做大選pythonphp環境好部署
python比較難
語言難度上,都差不多 Python的代碼風格簡潔易懂易於維護,而PHP代碼量一多起來就混亂了

個人感覺易於維護是關鍵。因為現在軟體開發的成本主要都在維護上面。 相比 PHP,Python 可以非常自然的擴充到隊列(RabbitMQ)、幕後處理系統(基於 Celery)、資料採礦(SciPy、NumPy)、文本處理(NLTK)、系統部署(Fabric)、監控(Supervisord)等所有方面,而 PHP 只能做網頁前台。要看需求是重展現還是重商務邏輯,重展現就php,重商務邏輯就python 可以直接讓他們讀比較簡單的python代碼,和php代碼,對比出前者更接近自然語言。
比如
python: var is not None
php: $var !== null

保羅•格雷厄姆在《駭客與畫家》中極力推崇lisp的一個理由是,它可以用比其他常用語言更少的代碼實現相同的功能。於是你可以比競爭者更快地推出新功能,並且減少代碼中潛在的bug。對於互連網這個行業來說,快速是很重要的一件事。如果是小公司或創業團隊就更重要了。

python也有同樣的優勢。而它從文法上來說又比php,lisp容易學。

壞處可能是用它的程式員少,招它公司少。可這又有什麼要緊呢?



ps:對於你們老闆的問題,你可以說,我去知乎上問了下,人家告訴我知乎是用python寫的主要還得看是哪方面
  1. 吐槽 PHP $ 實在不能算借口,我都是用左 alt 映射到 $ 的,或者右 windows 鍵,沒人強迫你每次都要按 shift+4。
  2. PHP 豐富的中文資料這點無可置疑, Python 大部分都是英文的,不過學一下英語沒什麼難的。
  3. PHP 更貼近前台,但這並不意味著它不能做幕後處理。
  4. 做網站還是 PHP 用起來比較順手,不論是模板引擎還是各種架構 (個人觀點)。
  5. Python 最讓我印象深刻的還是字串和數組切片,實在是很方便。
  6. Python 應用範圍非常廣,基本上我遇到的問題都能用 Python 來解決,而且代碼量也遠比 PHP 要少。
  7. Python 的命名空間和庫的匯入做比PHP好,而 PHP 你經常能見到很長的函數名,一般都是以模組名開頭的,比如 “mb_” 。
  8. 個人覺得 PHP 在資料庫查詢和執行效率方面是要優於 Python 的。(百萬級的資料量測試過)。
  9. Python2 到 Python3 很容易過渡,中小型的項目只要花點時間就可以了。
  10. 既然 PHP 和 Python 各有優勢與短處,為什麼不能一起用?

//最後吐槽一下,用 PHP 寫爬蟲遇到 Cookie 和登入的表示無能為力。
以上僅為個人觀點,看一下就好。
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.