讓那些無用程式碼註釋見鬼去

HTML5資源教程 - 蔣麗麗發表於2014-12-12

摘要——註釋簡單程式碼會干擾對重要註釋的理解。程式開發者最好能用最精要的註釋來解釋重點程式碼。

舉個例子,你開啟一個電箱,裡面有幾百根電線,蒙了吧。再一看,每根電線上面都有一個整潔的小標籤。真是謝天謝地啊!但是,當你一個個去翻看標籤的時候,見鬼的,幾乎所有的標籤都是空白的!

7086_13017491096X8d

然後,在你花了整整一個小時去瀏覽每一個小標籤之後,終於給你找到12條有用的資訊,真心喜大普奔!當然,希望在你頭腦一片混亂的時候得出的結果仍然是正確的,沒有遺漏,呵呵呵。

當我需要研究程式碼的時候看到到處都是垃圾註釋,唉,我的感覺就和上面在那麼多標籤裡面找有用的一樣。見鬼的,想從一大堆垃圾註釋裡確定哪個有用簡直就像大海撈針!

說一個常用的開源專案,裡面都是這些垃圾註釋:

/**
* __construct function.
*
* @access public
* @return void
*/
public function __construct() {


}

再來一個:

/**
* Constructor
*/
public function __construct() {

}

還有一個

// Convert float to string
$value = float_to_string( $value );

這些註釋就跟電箱裡的空白標籤一樣,明晃晃的擺在那裡,增加干擾還降低註釋的可用性。看到這樣的註釋,怪不得那些可憐的開發人員要廢寢忘食了。

我敢肯定,那個把空白標籤貼在每根電線上的電工自認為這是一個特棒的主意,他幫助了那些在他後面來的人:他們有什麼想寫的,只要在這些已經貼好的標籤上面寫就可以了。當然也有可能他本來打算自己填好所有標籤。撇開他的好意不說,這樣做的結果真心是糟透了,還不如只貼那有用的12張呢!

在程式設計的時候,開發人員經常被告知要註釋,但是他們中很少有人知道怎樣註釋才好。所以開發人員註釋程式碼的時候,並不是因為有必要,而是因為他們覺得這是義務。開發人員認為如果在程式碼中多多註釋,能表現他們工作能力。

見鬼的,這也不知道是哪門子的理論。我最厭煩每隔幾行程式碼就有註釋,而實際上卻屁用沒有。註釋的作用絕對不是為了純粹炫耀我們是“不明覺厲”的程式設計師,而是為了重點記錄我們搞這些程式碼的原因。這樣一來,那些垃圾註釋就能滾蛋了。看下面的例子:

// We need to account for product price changes,
// so we get the price of the product when each order occurred
$order_prices = $this->get_order_prices();

說說我的做法吧,當我考慮是否要寫註釋的時候,我就問自己:如果以後回過頭來看這些程式碼,我能不能一下子明白當初為什麼要這樣寫?如果以後我會非常感謝這些註釋,那麼想也不用想,果斷寫上註釋。否則,就讓那些垃圾註釋見鬼去吧。

相關文章