iPhone開發:Objective C 代碼規範-iOS總結版

來源:互聯網
上載者:User

標籤:


一,關於空行

A:.h中的空行

1,檔案說明與標頭檔包涵(#import)之間空1行

2,標頭檔包涵(#import)之間,如果需要分類區別,各類別之間空1行

3,標頭檔包涵(#import)與@class之間空2行

4,@interface與@class之間空一行

5,標頭檔{}裡面,空1行開始聲明對象成員,如果需要分類區別,各類別之間空1行

6,{}外空1行,書寫屬性,如果需要分類區別,各類別之間空1行

7,空1行開始寫方法,如果需要分類區別,各類別之間空1行

8,方法完成後,空1行@end

9,如果需要聲明protocal,空2行接著寫。通常protocal寫在@end後面,但是聲明在@interface前面,也可以另寫一個檔案

 

B:.m中的空行

1,檔案說明與標頭檔包涵(#import)之間空1行

2,標頭檔包涵(#import)之間,如果需要分類區別,各類別之間空1行

3,@implementation和@synthesize之間空一行,@synthesize不要使用逗號(,)如果需要分類區別,各類別之間空1行

4,@synthesize與方法之間空2行

5,各方法之間空2行

 

C:方法裡面的空行

1,方法名後空1行開始寫

2,變數聲明後需要空1行,如果需要分類區別,各類別之間空1行

3,條件,迴圈,選擇語句,整個語句結束,需要空1行

4,各功能塊之間空1行

5,最後一個反括弧之前不空行

6,注釋與代碼之間不空行

7,#pragma mark與方法之間空1行

 

二,關於空格

1,.h中協議<>前面有1個空格

2,.h中成員聲明時,類型與變數之間有至少1各空格。星號(*)靠近變數,不靠近類型。(部分習慣,所有變數可以以*對齊,中間留空)

3,@property後有1各空格,()裡面,逗號後有1個空格,括弧外,先留1個空格,再聲明屬性

4,方法+,-後,與()之間有1個空格

5,傳回型別與*之間有1個空格,方法參數中傳回型別與*之間有1個空格

6,多參數的方法,每一個參數後面都有1個空格

 

三,關於布爾值

1,不要用if(obj==nil){},而用if(!obj){}

2,比較時把常量放前面可以避免錯誤

不要用if(aIntValue==255){},而用if(255==aIntValue){},避免漏掉一個“=”,而變成賦值

3,不要用if(aBool==YES){},直接用if(aBool){}或if(!!aBool){}

 

四,變數屬性名稱和其它

1,盡量在使用的時候才聲明變數,盡量少用全域變數

2,變數名不要只使用一個字母,盡量能表示變數的意思

3,@synthesize和@dynamic,應該放在類實現的最上面,每一個聲明都單獨一行

4,協議protocls需要加#pragam marks-來區分

5,釋放時應該[obj release],obj = nil; delegate也應該在dealloc裡面delegate = nil;

 以上是我的一些總結其它參照:http://www.cimgf.com/zds-code-style-guide/ Google Objective-C Style Guide:http://wenku.baidu.com/view/a9b80ecdda38376baf1faedf.html最正宗的當屬apple官方的:http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/CodingGuidelines/CodingGuidelines.html

iPhone開發:Objective C 代碼規範-iOS總結版

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.