django學習系列——python和php對比

python 和 php 我都是使用過,這裏不想作一個很是理性的分析,只是根據本身的經驗談一下感想。php

在web開發方面,無疑 php 更甚一籌。

從某種角度來講,php 就是專門爲 web 定製的語言。 他沒有強制的變量類型,文件結構也很鬆散, 不須要再代碼中手動導入各類類庫,開發很是快速方便,穩定性也很是好。 python 則否則, 它須要手動定義不少參數, 大多數時候,須要一個相似 uwsgi 的 中間服務器 和 nginx,apache等更專業的web服務器通信。雖然 uwsgi 也能夠做爲 web 服務器使用,卻不多人這樣使用。因爲強制類型和嚴格的格式書寫的關係,它在開發和維護的成本都比較高。java

在開發模塊和中間件以及開源軟件上,python各甚一籌。

php 的劣勢在於,它的各類模塊不夠豐富靈活,只能經過加載php擴展來實現,過於笨重;它的語言也不夠嚴謹,不是一個開發基礎模塊很好的選擇。 因此能夠看到,市面上,許多基礎的開源軟件都是使用更爲嚴謹的語言來開發的,如 python, java, node.js 等,這些開源軟件有 sqlmap( python), elasticsearch( java ) 等。 python 有大量的各類模塊可使用,使得能夠靈活的開發出各類軟件。node

在人工智能方面,python各甚一籌。

tensorflow 百分之40%的語言是用 python 完成,重要性可見一斑。python

在兼容性方面,php更甚一籌。

php 無疑有更好的向後兼容性,即便如今最新版本已經達到 php7.2, 可是將php5 甚至 php4 的項目遷移到上面的時候,也不會出現很是大的不兼容。 完善的文檔還會提示你,使用哪些函數更好,哪些函數之後會被棄用。 這無疑極大的減小了開發者的維護成本。nginx

python 則否則,python2 和 3 在類庫 上有極大的不一樣,python2的項目遷移到 python3上須要極大的成本。web

結尾和關於寫一個學習django源碼系列的專題想法

django 是一個 python 的 web 框架。 對比 php 的 codeigniter 框架,能夠發現。 同爲MVC 模型,它的代碼風格是不同的,複雜度是更高的。 因此,做爲一個學習的材料。我能夠經過 django 更好的瞭解 python 中的一些設計思想。sql

相關文章
相關標籤/搜索