成功軟件開(kāi)發(fā)者的9種編程習(xí)慣
有些人會(huì)想:只要程序運(yùn)行結(jié)果好,就不管原程序編得怎樣。但絕對(duì)不是這樣的。軟件不是一次性就作完的,有必要做修改,擴(kuò)展等管理。所以原程序要盡量作成易看懂,管理方便。
這樣做,第一是為了軟件開(kāi)發(fā)者方便,其次還會(huì)影響到軟件的性能。管理不方便的程序不會(huì)作出好的軟件。
希望通過(guò)這篇文章能學(xué)到好的編程習(xí)慣。要理解這文章的內(nèi)容,你至少要懂得1個(gè)開(kāi)發(fā)工具語(yǔ)言。這里舉例說(shuō)明的都是C語(yǔ)言,但你對(duì)C語(yǔ)言沒(méi)有了解也不要擔(dān)心。這里說(shuō)明的是原理而不是特定的語(yǔ)言。
1. 語(yǔ)句要結(jié)束得徹底---(冒號(hào);)
程序員經(jīng)常有的失誤之一是忘記在語(yǔ)句結(jié)束后加一個(gè)冒號(hào)。這樣的問(wèn)題點(diǎn)不易發(fā)現(xiàn),時(shí)而讓程序員不知所措。編程時(shí)要時(shí)時(shí)注意每個(gè)語(yǔ)句是否以冒號(hào)結(jié)束,雖然不是所有語(yǔ)言都以冒號(hào)結(jié)束。下面有忘記點(diǎn)冒號(hào)的例子。
int main(void)
{
/* 沒(méi)有冒號(hào),導(dǎo)致問(wèn)題*/
printf("Hello World!n")
return(0);
}
很多的人犯這樣的錯(cuò)誤。不到幾條的程序是不難發(fā)現(xiàn)這樣的問(wèn)題,但1000條以上的程序里呢?查找那忘記寫冒號(hào)了的語(yǔ)句不會(huì)是很容易的事。記住,結(jié)束一條語(yǔ)句,一定要寫冒號(hào),如同一般文章結(jié)束后點(diǎn)句號(hào)一樣。
還有一種關(guān)于冒號(hào)的失誤是不該寫冒號(hào)的時(shí)候?qū)懨疤?hào)。有經(jīng)驗(yàn)的程序員看到下面例子會(huì)覺(jué)得好笑,但筆者確實(shí)看到了很多這樣的失誤。
/* main() 后面不該寫冒號(hào) */
int main(int argc, char *argv[]);
{
printf("Hello World");
return(0);
}
函數(shù)或Method后面是不該寫冒號(hào)的。
2. 要適合使用空格和tab鍵
C語(yǔ)言是不分辨空格的,因此程序也可以不需要空格一直寫下去,但這樣的程序會(huì)是誰(shuí)都看不懂的"很有難度"的程序,請(qǐng)看以下例子:
if(x==0) {a=b=c=d=MAX; x++;}
這樣寫,也許會(huì)節(jié)省空間,但不僅別人,編程的本人也會(huì)很難看懂。程序要寫得容易看懂!
if(x == 0)
{
a = b = c = d = MAX;
x++;
}
這樣寫,看起來(lái)不很清楚嗎?程序要有確切的空格才容易看得懂。
3. 統(tǒng)一使用大括號(hào)和切斷方式
每個(gè)程序員使用大括號(hào)({})和改行的方式都有自己的習(xí)慣,這樣,把程序移交給別人繼續(xù)做的時(shí)候,會(huì)出現(xiàn)混亂。比如象以下例子:
int main()
{
int x = 1;
int y = 10;
while(x y ){
printf("Value of x is %dn", x);
x++;
}
}
有些程序員會(huì)這樣寫大括號(hào):
int main()
{
int x = 1;
int y = 10;
while(x y )
{
printf("Value of x is %dn", x);
x++;
}
}
評(píng)論