程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP垃圾代碼的特征介紹

PHP垃圾代碼的特征介紹

編輯:關於PHP編程

我們在開發一個程序的時候,經常會在網上搜集很多其他人的程序代碼,但是如何正確的去選擇一個良好的程序代碼幫助自己解決問題呢?下面我們就為大家介紹有關

如果你對要修改的軟件並不熟悉,那我建議你還是先好好看看這個軟件之後再作決定。那麼如何能夠不作深入研究就能認定這是垃圾代碼呢?這裡給出10個PHP垃圾代碼的征兆,以供參考。

PHP垃圾代碼1、試圖改造面向對象模型,或是修改某個PHP語言特性

如果你發現一個類名為Object,那很有可能這個軟件的作者試圖改造面向對象模型(很可能是因為他自己對面向對象並不了解),從而我們可以預料他所作的修改不僅限於此。遇到這種情況,還是快快關掉你的電話躲起來吧!

PHP垃圾代碼2、含有自定義的全局變量

查找代碼中的global關鍵字或$GLOBALS變量,如果發現以下代碼:

global $database, $my, $mainframe;

這就是臭名昭著的全局變量。如果你能告訴後兩個全局變量代表什麼,那麼我猜你對我的代碼很熟悉,或者你有超自然的力量。如果你還能告訴我哪些代碼會用到他們,那就太神奇了!總之,離它遠點。

PHP垃圾代碼3、隨處可見的HTML和SQL

找找代碼中的HTML代碼和SQL語句,你應該能夠很快地辨別這些代碼是否應該出現在這裡。如果你發現一個文件裡既有HTML又有SQL,那恭喜你,你發現了最爛的軟件!

PHP垃圾代碼4、過於臃腫的類

查找最大的三個類文件,看看類的名稱是否有清晰的職能?再看看它的方法,是否互相有關聯?如果不是,尖叫著離開吧!

PHP垃圾代碼5、大量的公開變量或靜態變量

如果你發現很多變量被定義為“public static”,那就把你的報價提高三倍吧。原因我就不用解釋了。

PHP垃圾代碼6、多層繼承關系

我們應該盡量避免兩層以上的繼承關系。我曾花費大量時間處理擁有過多不相關行為的對象。如果你知道多層繼承有什麼用處,我會請你喝啤酒的。

PHP垃圾代碼7、試圖使用設計模式(只是試圖)

要知道代碼的作者是否使用設計模式,只需要檢索最常用的幾個就可以了,如factory(工廠模式),decorator(裝飾模式),strategy(策略模式)等。如果有,那你也能很快的識別作者是否真的會使用這些設計模式,或者只是想讓代碼看起來有趣些。如果是後者,那就快快離開吧。

PHP垃圾代碼8、不同錯誤級別下的程序紊亂

一個完好的應用程序應該在各個錯誤級別下都能正常運行。用/error_level(.*)/查找代碼是否修改了錯誤級別。如果有,改為E_STRICT再運行一下看看。

PHP垃圾代碼9、有個叫core的目錄

當整個應用程序都要依靠某些代碼才能運行時,把這堆代碼放入一個叫core的目錄裡會是個不錯的方法。但是,除了目錄的名字好聽些,這種方法往往預示著糟糕的設計。

PHP垃圾代碼10、用自己設計的模板語言

對這種情況一定要充滿恐懼。因為這些家伙試圖造出屬於自己的輪子!如果不小心這一點的話,你會發現你一天的美好時光都用在如何模擬一個for循環上。


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