一線研發(fā)之聲 之 完美主義者的程序員特征
4.沒有不明何意的常量。
本文引用地址:http://m.butianyuan.cn/article/256101.htm常量的含義,通常只有原創(chuàng)者才知道。
如果沒有特別的說明,沒有一定的經(jīng)驗,這個程序回頭在閱讀時就難以看懂。
求哪位高手來一段鮮明對比的源碼吧?
5. if 必有else,switch 必有default。
在他的程序里你不會看到一個單一的if語句,哪怕else確實什么都不需要處理,你也會看到這樣的代碼。
if (is_condition_true())
{
do_something();
}
else
{
/* do nothing */
}
因為,在多年的工作經(jīng)驗中,他發(fā)現(xiàn),系統(tǒng)的崩潰,多數(shù)死在else里面。這樣的代碼,告訴別人也告訴自己,此處的else是經(jīng)過充分考慮,的確沒有需要處理的。下次自檢程序時,此處就可以快速跳過。
同樣的道理,每一個switch,其default,也是經(jīng)過深思熟慮的,充分防錯。
switch (state)
{
case STATE_XXXX:
break;
case STATE_YYYY:
break;
........
default:
/* do nothing */
break;
}
評論