這個題目把我自己都看傻了,因為仔細(xì)想想,這不是一個命題,是對代碼的思考,對細(xì)節(jié)的推敲和打磨。寫好代碼是一門學(xué)問,還是一種修行。
以前是公眾號(JackieZheng)和博客同步更新,尤其是技術(shù)類文章。但是最近在公眾號上寫的比較多,因為在那我可以想寫多少寫多少,隨時隨地記錄下自己的心得,還有勉勵自己的雞湯或是毒雞湯。
以后應(yīng)該會階段性把公眾號的文章總結(jié)出來,寫成一篇博客,想了想,這樣比較符合這兩個平臺的特性。
從《阿里官方Java代碼規(guī)范標(biāo)準(zhǔn)》說起
以前對于代碼規(guī)范的理解和積累都是瑣碎的,有時候從網(wǎng)上的文章看到如何命名,有時候從同行那里聽到如何進(jìn)行代碼格式化。直到年前老大讓我看看《阿里官方Java代碼規(guī)范標(biāo)準(zhǔn)》,草草的過了遍,掠過某些點的時候有種被擊中的感覺(哎呀,這條規(guī)范我之前不是一直都在理所當(dāng)然的違背么,恩,理所當(dāng)然),有些點看了還是有些麻木,大概是因為還不知道正確的做法是什么。
一次被老大review code的過程中發(fā)現(xiàn)了自己的代碼中還是問題很多,最近也正好在看《代碼整潔之道》,這里結(jié)合過往深刻教訓(xùn)以及公眾號的總結(jié)說說如何寫出好代碼。
老掉牙的命名
稍微接觸過一點點計算機的同學(xué),都顯然知道,變量的命名不能以數(shù)字打頭,命名要有意義等等。
以前我認(rèn)為只要不使用如i,j,k定義的變量名的工程師就是好的工程師,現(xiàn)在發(fā)現(xiàn)這是不夠的。
魔法值
魔法值,如果你看過《阿里官方Java代碼規(guī)范標(biāo)準(zhǔn)》,就肯定知道這個詞的意思——使用了沒有定義的值。比如maxPoint == 100
,看著沒毛病啊,但是100這個值你這么用覺得合適么,人家還沒有定義過呢。如果有個這樣的聲明語句private static final int MAX_BOILING_POINT = 100
,然后網(wǎng)友評論