PHP中誰跑得更快:函數對戰類對象



PHP是一種常用的開源腳本語言,我們稱之爲“超文本預處理器”。它的語法結合了C語言、Java和Perl的特性,方便我們學習,並且使用廣泛,它主要適用於Web開發領域。 

php 

在我們使用它進行編程的時候會考慮很多問題,比如今天我們來討論這樣一個問題: php用函數快還是類對象快呢?

每個人都有自己不同的觀點,公說公有理婆說婆有理嘛。小編覺得還是用函數蹭蹭地速度就能跟上,而且執行效率也是非常高的。

從效率上來說,直接寫一個函數要比寫一個類的執行效率要高,因爲類的話編譯時候還要考慮實例化、繼承、公有私有等等一大堆面向對象的機制,執行效率自然會比函數低。    

我們再來看一個問題:爲什麼大家較喜歡用面象對向編程?

1、開放-封閉原則:是說軟件實體(類、模塊、函數等等)應該可以擴展,但是不可修改。

2、里氏代換原則:子類型必須能夠替換掉它們的父類型。

3、依賴倒轉原則:A. 高層模塊不應該依賴低層模塊。兩個都應該依賴抽象。B. 抽象不應該依賴細節。細節應該依賴抽象。

4、是因爲面向對象的一些特性所決定的,如多態。由於在php中訪問控制實現不是非常方便。所以個人再次認爲函數能完成的功能就代替對象完成。

雖然面向對象與函數它們都能減少代碼的重複率同時也利於修改與維護。但是遇到下面情況,就不用使用函數與面向對象。

1、該代碼複用次數不多,功能單一的時候,就不應該使用。假如是爲了便於維護,這樣的話可以添加更加詳細的註釋來代替。

2、對於常用的,有利於移置的功能,可以使用面向對象的方法來封裝。如數據庫處理操作類,文件壓縮與解壓縮,文件操作,文件夾操作,文本日誌等都可以按功能做成類,利於以後項目複用。

3、對於功能單一的,可以把所有函數放在同一文件裏,如果要使用函數,再require進來。

最後來個總結:PHP相對於其他是一門比較鬆散的編程語言,而且它的限制較少,但由於面向對象的實現不夠完全,所以在使用類或函數時候,還是根據個人喜愛的來選擇。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章