這個(gè)題目把我自己都看傻了,因?yàn)樽屑?xì)想想,這不是一個(gè)命題,是對(duì)代碼的思考,對(duì)細(xì)節(jié)的推敲和打磨。寫好代碼是一門學(xué)問(wèn),還是一種修行。
以前是公眾號(hào)(JackieZheng)和博客同步更新,尤其是技術(shù)類文章。但是最近在公眾號(hào)上寫的比較多,因?yàn)樵谀俏铱梢韵雽懚嗌賹懚嗌伲S時(shí)隨地記錄下自己的心得,還有勉勵(lì)自己的雞湯或是毒雞湯。
以后應(yīng)該會(huì)階段性把公眾號(hào)的文章總結(jié)出來(lái),寫成一篇博客,想了想,這樣比較符合這兩個(gè)平臺(tái)的特性。
從《阿里官方Java代碼規(guī)范標(biāo)準(zhǔn)》說(shuō)起
以前對(duì)于代碼規(guī)范的理解和積累都是瑣碎的,有時(shí)候從網(wǎng)上的文章看到如何命名,有時(shí)候從同行那里聽(tīng)到如何進(jìn)行代碼格式化。直到年前老大讓我看看《阿里官方Java代碼規(guī)范標(biāo)準(zhǔn)》,草草的過(guò)了遍,掠過(guò)某些點(diǎn)的時(shí)候有種被擊中的感覺(jué)(哎呀,這條規(guī)范我之前不是一直都在理所當(dāng)然的違背么,恩,理所當(dāng)然),有些點(diǎn)看了還是有些麻木,大概是因?yàn)檫€不知道正確的做法是什么。
一次被老大review code的過(guò)程中發(fā)現(xiàn)了自己的代碼中還是問(wèn)題很多,最近也正好在看《代碼整潔之道》,這里結(jié)合過(guò)往深刻教訓(xùn)以及公眾號(hào)的總結(jié)說(shuō)說(shuō)如何寫出好代碼。
老掉牙的命名
稍微接觸過(guò)一點(diǎn)點(diǎn)計(jì)算機(jī)的同學(xué),都顯然知道,變量的命名不能以數(shù)字打頭,命名要有意義等等。
以前我認(rèn)為只要不使用如i,j,k定義的變量名的工程師就是好的工程師,現(xiàn)在發(fā)現(xiàn)這是不夠的。
魔法值
魔法值,如果你看過(guò)《阿里官方Java代碼規(guī)范標(biāo)準(zhǔn)》,就肯定知道這個(gè)詞的意思——使用了沒(méi)有定義的值。比如maxPoint == 100
,看著沒(méi)毛病啊,但是100這個(gè)值你這么用覺(jué)得合適么,人家還沒(méi)有定義過(guò)呢。如果有個(gè)這樣的聲明語(yǔ)句private static final int MAX_BOILING_POINT = 100
,然后延伸閱讀
- ssh框架 2016-09-30
- 阿里移動(dòng)安全 [無(wú)線安全]玩轉(zhuǎn)無(wú)線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26
- 從棧不平衡問(wèn)題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來(lái)看看(二) 2017-07-26