程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP老手談PHP和Python的基礎特性

PHP老手談PHP和Python的基礎特性

編輯:關於PHP編程

本文作者做了11年的PHP,不過最近開始投向Python陣營了。下面將對PHP和Python兩種語言各自的特性進行一些描述,也許對你為項目選擇合適的語言也有一定的幫助。

看PHP和Python:PHP的問題

我之所以放棄PHP,原因首先是語言。PHP實際上不是一種語言,而是一種巨大的插件結構,以一種高層的形式來展示低層的庫。而大部分開發者使用的語言實際上是對C功能 (curl, mysql, gd, etc.)的包裝,通常情況下它們的庫展示得很簡單。因而這導致了PHP的API不一致

PHP語言的第二個問題是語言的管理問題。PHP語言實際上是由委員會來設計的,而且沒有人來制定任何共識性的標准。PEAR有自己的標准,PHP有自己的標准,這導致SPL classes更具Java風格,而PEAR卻截然不同。

從事PHP開發11年來,我認識了很多PHP領域的專家級開發者,它們對PHP也有很多看法。除了上文提到的委員會問題以及標准混亂問題之外,由於PHP的使用范圍非常廣,向後的不兼容對代碼造成了很大的破壞。

還要提到的一點是PHP缺乏很多現代語言的特性。現在再來說說Python:

PHP和Python:Python的優美之處

Python語言的創建方法幾乎與PHP的完全相反。首先,Python是由Benevolent Dictator和Guido van Rossum領導的,語言的開發由單一的人員主導,因此它的開發、管理以及長期運營會保持很好的連續性。Guido和Python的核心開發者通過PEP創建標准,而且通過公共接口展示標准是如何創建的。而且,Guido如果想到的語言特性不夠好,也不會出現在語言層中(如沒有++運算符,而且比較符中沒有分配)。

延續性的特點也延伸到了整個Python社區,所以你很難發現不同項目中的Python截然不同。

我最喜歡的Python的一個特點就是它的清晰。當打開Python中的一個文件的時候,我會清楚地知道裡面大概有什麼樣子的代碼,聯想到很多次我被PHP的這一點搞得焦頭爛額,我覺得這個特性非常有用。

總之,Python的系統級特性非常不錯。

Python另外一個很棒的特性是直白性。需要namespace(命名空間)?文件的名字就是命名空間;需要模塊?只需要用一個__init__.py文件代替;需要重命名功能?只需要new_func = old_func。


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved