一.命名規(guī)則
二.注釋
背景
1.1 當(dāng)我們第一次接觸某段代碼碾盟,但又被要求在極短的時(shí)間內(nèi)有效地分析這段代碼,我們需要什么樣的注釋信息颓鲜?
1.2 怎么樣避免我們的注釋冗長(zhǎng)而且凌亂不堪呢?
1.3 在多人協(xié)同開(kāi)發(fā)、維護(hù)的今天偶妖,我們需要怎么樣的注釋來(lái)保證高質(zhì)、高交的進(jìn)行開(kāi)發(fā)和維護(hù)工作呢政溃?意義
程序中的注釋是程序設(shè)計(jì)者與程序閱讀者之間通信的重要手段趾访。應(yīng)用注釋規(guī)范對(duì)于軟件本身和軟件開(kāi)發(fā)人員而言尤為重要。并且在流行的敏捷開(kāi)發(fā)思想中已經(jīng)提出了將注釋轉(zhuǎn)為代碼的概念董虱。好的注釋規(guī)范可以盡可能的減少一個(gè)軟件的維護(hù)成本 , 并且?guī)缀鯖](méi)有任何一個(gè)軟件扼鞋,在其整個(gè)生命周期中,均由最初的開(kāi)發(fā)人員來(lái)維護(hù)愤诱。好的注釋規(guī)范可以改善軟件的可讀性云头,可以讓開(kāi)發(fā)人員盡快而徹底地理解新的代碼。好的注釋規(guī)范可以最大限度的提高團(tuán)隊(duì)開(kāi)發(fā)的合作效率淫半。長(zhǎng)期的規(guī)范性編碼還可以讓開(kāi)發(fā)人員養(yǎng)成良好的編碼習(xí)慣溃槐,甚至鍛煉出更加嚴(yán)謹(jǐn)?shù)乃季S能力。注釋的原則
3.1 注釋形式統(tǒng)一
在整個(gè)應(yīng)用程序中科吭,使用具有一致的標(biāo)點(diǎn)和結(jié)構(gòu)的樣式來(lái)構(gòu)造注釋昏滴。如果在其他項(xiàng)目組發(fā)現(xiàn)他們的注釋規(guī)范與這份文檔不同,按照他們的規(guī)范寫代碼砌溺,不要試圖在既成的規(guī)范系統(tǒng)中引入新的規(guī)范影涉。
3.2 注釋的簡(jiǎn)潔
內(nèi)容要簡(jiǎn)單、明了规伐、含義準(zhǔn)確蟹倾,防止注釋的多義性,錯(cuò)誤的注釋不但無(wú)益反而有害猖闪。
3.3 注釋的一致性
在寫代碼之前或者邊寫代碼邊寫注釋鲜棠,因?yàn)橐院蠛芸赡軟](méi)有時(shí)間來(lái)這樣做。另外培慌,如果有機(jī)會(huì)復(fù)查已編寫的代碼豁陆,在今天看來(lái)很明顯的東西六周以后或許就不明顯了。通常描述性注釋先于代碼創(chuàng)建吵护,解釋性注釋在開(kāi)發(fā)過(guò)程中創(chuàng)建盒音,提示性注釋在代碼完成之后創(chuàng)建表鳍。修改代碼的同時(shí)修改相應(yīng)的注釋,以保證代碼與注釋的同步祥诽。
3.4 注釋的位置
保證注釋與其描述的代碼相鄰譬圣,即注釋的就近原則。對(duì)代碼的注釋應(yīng)放在其上方相鄰或右方的位置雄坪,不可放在下方厘熟。避免在代碼行的末尾添加注釋;行尾注釋使代碼更難閱讀维哈。不過(guò)在批注變量聲明時(shí)绳姨,行尾注釋是合適的;在這種情況下阔挠,將所有行尾注釋要對(duì)齊飘庄。
3.5 注釋的數(shù)量
注釋必不可少,但也不應(yīng)過(guò)多购撼,在實(shí)際的代碼規(guī)范中竭宰,要求注釋占程序代碼的比例達(dá)到20%左右。注釋是對(duì)代碼的“提示”份招,而不是文檔,程序中的注釋不可喧賓奪主狞甚,注釋太多了會(huì)讓人眼花繚亂锁摔,注釋的花樣要少。不要被動(dòng)的為寫注釋而寫注釋哼审。
3.6 刪除無(wú)用注釋
在代碼交付或部署發(fā)布之前谐腰,必須刪掉臨時(shí)的或無(wú)關(guān)的注釋,以避免在日后的維護(hù)工作中產(chǎn)生混亂涩盾。
3.7 復(fù)雜的注釋
如果需要用注釋來(lái)解釋復(fù)雜的代碼十气,請(qǐng)檢查此代碼以確定是否應(yīng)該重寫它。盡一切可能不注釋難以理解的代碼春霍,而應(yīng)該重寫它砸西。盡管一般不應(yīng)該為了使代碼更簡(jiǎn)單便于使用而犧牲性能,但必須保持性能和可維護(hù)性之間的平衡址儒。
3.8 多余的注釋
描述程序功能和程序各組成部分相互關(guān)系的高級(jí)注釋是最有用的芹枷,而逐行解釋程序如何工作的低級(jí)注釋則不利于讀、寫和修改莲趣,是不必要的鸳慈,也是難以維護(hù)的。避免每行代碼都使用注釋喧伞。如果代碼本來(lái)就是清楚走芋、一目了然的則不加注釋绩郎,避免多余的或不適當(dāng)?shù)淖⑨尦霈F(xiàn)。
3.9 必加的注釋
典型算法必須有注釋翁逞。在代碼不明晰或不可移植處必須有注釋肋杖。在代碼修改處加上修改標(biāo)識(shí)的注釋。在循環(huán)和邏輯分支組成的代碼中添加注釋熄攘。為了防止問(wèn)題反復(fù)出現(xiàn)兽愤,對(duì)錯(cuò)誤修復(fù)和解決方法的代碼使用注釋,尤其是在團(tuán)隊(duì)環(huán)境中挪圾。
3.10 注釋在編譯代碼時(shí)會(huì)被忽略浅萧,不編譯到最后的可執(zhí)行文件中,所以注釋不會(huì)增加可執(zhí)行文件的大小哲思。Objective-c注釋技巧
4.1 Xcode注釋常規(guī)方法
4.2(使用Alcatraz下載插件VVDocmenter)
三.使用#pragma mark 方便閱讀