最近在Review團隊部分同學(xué)的代碼,梳理目前系統對外暴露的API情況,心里有一些感觸,結合自己過(guò)去的一些心得體會(huì ),簡(jiǎn)單聊一下代碼中函數或者API接口的命名規范。
1. 拼寫(xiě)要準確
無(wú)論是使用英文單詞還是拼音,一定要注意拼寫(xiě)的正確性,典型的錯誤例如“creatTime”,我確實(shí)不太能忍(即便我不是處女座)。特別是對外發(fā)布的API的名字命名,一定不能錯,否則一旦發(fā)布就不方便改了,要保持兼容性。而且由于是提供給外部團隊使用,拼寫(xiě)錯誤也會(huì )給使用者帶來(lái)不便。
2. 使用正常的時(shí)態(tài)
這一點(diǎn)平時(shí)提到的人不多,但是我個(gè)人是比較看重的,特別是代碼中狀態(tài)的變量或者函數的命名,比如 onXxxxStarted 表示xxx已經(jīng)啟動(dòng)了,isConnecting表示正在連接。正確的時(shí)態(tài)可以給使用者傳遞準確的信息。
3. 函數和屬性的命名是有區別的
如果是函數,建議使用動(dòng)賓結構
動(dòng)賓結構就是 doSomething,這樣的函數命名含義明確
比如: openFile, setName, addNumber...
如果是屬性命名,建議使用定語(yǔ) 名詞
比如 fileName, maxLength, textSize
5. 不要單詞 拼音混合使用
比如:useJiFen,huKouNumber.. 缺乏美感不說(shuō),可讀性大幅度降低。
6. 謹慎使用縮寫(xiě)
除非是約定俗成已經(jīng)被廣泛使用的縮寫(xiě),否則老老實(shí)實(shí)用完整拼寫(xiě)。
典型的反面例子: count->cnt, manager->mgr password->pwd button->btn
無(wú)論我們使用eclipse 或者intellij, 都有很好的自動(dòng)完成功能,名字長(cháng)一點(diǎn)沒(méi)關(guān)系的,可讀性更重要。
簡(jiǎn)單的說(shuō),我們在命名的時(shí)候,需要站在使用者的角度去思考,API設計也要講究用戶(hù)體驗。好的API設計應該是符合直覺(jué),能望文生義的,讓使用者能用盡量簡(jiǎn)潔的代碼完成調用。
聯(lián)系客服