一、代碼規范
1. 命名規則
? ? 1)類名首字母大寫,方法首字母小寫,方法中的參數首字母小寫,同時盡量讓方法的命名讀起來像一句話,能夠傳達出方法的意思。?
? ? 2)常量和變量命名小寫字母開頭,采用“駝峰命名法”,并且要做到見名知其意。
? ? 3)宏命名大寫。
? ? 4)代理名稱:類名+Delegate ? ? ? ? ? ? ? ? ? ?代理方發名稱: ?類名+方法實際意義
2. 注釋
? ? ? 注釋很重要,但除了開頭的版權聲明,盡可能把代碼寫的如同文檔一樣,讓別人直接看代碼就知道意思。(iOS端項目注釋規范附統一代碼塊)
注釋分幾類:
1)屬性注釋
屬性注釋 使用 /** 注釋*/ 的文檔注釋格式。 這種注釋相較于// 注釋的優點是此屬性可以在后面的引用時,在智能提示的下方顯示中文注釋。
2)方法集注釋
每個代理的方法可以歸結為一個整體的方法集,在方法集中實現協議的所有代理方法。命名規范:#pragma mark - 方法集名稱,上空兩行,下空一行。
補充說明:系統自帶方法集注釋為#pragma mark ,平時自己使用時盡量在后面加上-,即#pragma? mark -,這樣注釋的方法集會有一條分割線,方便查找代碼時分隔開不同的方法集。使用方式見下圖
3)普通注釋
在項目中的某個地方的邏輯可能比較復雜或者是核心思想的代碼,這種地方應加上一些注釋作為標注,也利于自己維護代碼,利于之后別人接手代碼。
3. 盡可能保證 .h文件的簡潔性,可以不公開的API就不要公開了,寫在實現文件中即可。
4. 實例變量聲明時變量名前面加下劃線“_”,局部變量不用加。
5. 寫delegate的時候類型應該為weak弱引用,以避免循環引用,當delegate對象不存在后,我們寫的delegate也就沒有存在意義了自然是需要銷毀的。
6. 使用Block時,內容四個空格縮進,“^”后帶有參數時,參數與“{”之間有一個空格縮進
補充說明:若要調整整個.m的代碼規范,也可以全選,然后 ?“control+i” ?快捷鍵縮進空格。
7.編碼排版格式
8. 對于系統的常用類作實例變量聲明時加入后綴:
二、類代碼組織原則
一個原則:析構函數- (void)dealloc最好放到類最上面,第一眼就可以看到這個方法,可以方便看到是否remove了一些操作,對內存的合理釋放等,controller,view的生命周期函數放到最上面,自己實現的方法在下面,相同/相近功能的方法采用#pragma mark -來標記,以便查看。
示例:
三、補充說明
1. 刪除多余的空行
* 所有方法與方法之間空1行
* 所有代碼塊之間空1行
2. 刪除多余的注釋
* 刪除注釋掉的代碼
* 刪除沒有意義的注釋
3. 刪除多余的方法
* 如果方法沒有使用到,請刪除它
* 如果方法沒有執行任何業務邏輯,請刪除它或者給出一定注釋
4. 刪除未被使用的資源文件
5. 添加必要的注釋
* 所有 .h 文件中的property 需要給出注釋
* 所有自定義的方法需要給出注釋
* 比較大的代碼塊需要給出注釋
* 所有代碼中出現的阿拉伯數字需要給出注釋
* 程序中出現加密/解密 邏輯的操作地方,需要給出注釋說明過程(無論是系統還是自定義)
6. 整體代碼風格需要統一
* 代碼后面的”{“ 不需要單獨占用一行
* 邏輯運算符 與 代碼之前空一格
* “#pragma mark -” 與下面的代碼之前不要空行
* 遵循一般性的代碼規范
參考鏈接:iOS開發規范? iOS編程規范? IOS開發編碼及命名規范