iPhone編程規範

一、類

  1. 與XxYyyController對應的xib文件應該命名爲XxYyy。

    xib文件的命名

  2. 類中功用相同的成員應以tab對齊。不同功用的成員變量(以及對應的property)、成員函數前後以空行隔開。
  3. 先寫property,再寫靜態函數,再寫成員函數
    1
    2
    3
    4
    5
    6
    7
    8
    9
    @property (nonatomic, retain) NSData    *channelListXMLData;
     
    + (ViewSwitcher *)getInstance;
    + (void)destoryInstance;
     
    - (void)showWelcomeView;
    - (void)showMenuView;
    - (void)showChannelView;
    - (void)showArticleView;

二、函數和語句

  1. 函數的-+標識符後應緊接一個空格,返回值的括號右側緊跟函數名函數形參規則
  2. 函數的形參若與類成員變量衝突,如scrollView,則使用theScrollView或者aScrollView這樣的形式
  3. 函數的大括號使用蘋果xcode預定義的方式:前大括號不換行,前面加一個空格
  4. 函數創建的內存:誰創建,誰銷燬。函數名中不含有new、alloc、create、copy的,返回值都應該是autorelease的對象。反之,創建的內存由調用者釋放。函數返回值的內存管理
  5. 語句中:二元操作符(- + = == < >)左右都有空格,一元操作符僅左邊(或者右邊)有空格
    1
    2
    3
    i = i + 1;
    if (xTmp = ++i) { doSomeThing(); }
    if (i-- == xTmp) { whyDoYouDoThis(shit) }
  6. 太長且有視覺上的重複性的代碼,使用有意義的折行:
    1
    2
    3
    4
    5
    6
    return [NSString stringWithFormat:@"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x",
                result[0],  result[1],  result[2],  result[3],
                result[4],  result[5],  result[6],  result[7],
                result[8],  result[9],  result[10], result[11],
                result[12], result[13], result[14], result[15]
                ];

三、變量

  1. 統一使用UI庫封裝的基本類型,如NSInteger CGFloat,而不是int float

四、註釋與編譯器標識

  1. 註釋使用xcode預定義的方式:/* 和 */都獨立佔用一行代碼註釋規則
  2. 功能相關的一類函數,使用#pragma mark -來分隔,功能相關的函數要分類,使用#pragma mark xxxxxxx來分隔

五、宏

  1. 宏的命名規則:所有字母大寫,單詞之間以下劃線分隔
    1
    2
    #define FM_DEFAULT_IDENTITY        @"default_identity"
    #define FM_DEFAULT_ROOT_PATH       @"default_root_path"

    宏命名規範

  2. 宏名應該以所在類或文件的標示來開頭
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章