1. 程式人生 > >不要使用容易被誤解的名字

不要使用容易被誤解的名字

編碼過程中要主動找到誤解點,多問自己幾遍該名字是否會被誤解成別的意思。

比如filter這個詞,大家可以理解成過濾,但是就比較不清楚,過濾是剔除還是保留呢?

1、推薦使用maxg與min來包含極限

程式設計時,經常為用到最大值最小值巨集的定義,但是很多時候從字面我們無法理解,該值是否包含在範圍內。比如說我們定義購物車中可以存放在最大物品數。

#define CARD_MAX_LIMITS  10

if(items >= CARD_MAX_LIMITS )

{

......

}

這種寫法會造成大小差一的缺陷。CARD_MAX_LIMITS 的名字無法告訴我們是否包括10。但是這樣定義將會消除二義性:

#define MAX_ITEMS_IN_CAR   10

if(items >= MAX_ITEMS_IN_CAR)

{

......

}

2、推薦使用first與last及begin與end表示範圍

對於firt,last表示第一個與最後一個物件沒有二義性,比start stop要好。但是對於表示“最後的下一個值”,英語沒有更好的單詞能代表,begin與end已經是最佳選擇了。

以上例子只是說明,我們對變數起的名字要避免二義性。這樣才能把程式當成註釋。