Coding Guidelines for Cocoa

來源:互聯網
上載者:User

參考:

[1]蘋果官方

[2]三種編程命名規則(匈牙利法,小駝峰法,大駝峰法)

以下主要是針對Coding Guidelines for Cocoa 的個人讀書筆記,主要列舉個人容易違反的若干內容,詳細內容見參考一。

1.清晰性、一致性

1)蘋果一般採用小駝峰命名法,即第一個單詞首字母小寫,後面其他單字首大寫,例如:codeName。

2)命名應該簡潔清晰,不會產生歧義,並且不提倡採用縮寫,堅持用全拼。

3)命名應具有一致性,例如:多個類中具有相同功能的方法應該具有相同名稱,這樣讓人想到就能使用。

2.首碼

1)大家熟知NS、IB、AB等為蘋果自己的首碼,使用者開發時每個project應該具有一個唯一的首碼,這樣可以防止與蘋果系統庫及第三方發生命名衝突。objective-c中無命名空間概念,所有首碼更顯的尤為重要。

2)在具有外部連結性的名稱中使用首碼,比如類名、協議名、全域函數、常量、結構體等,不具有外部串連性的名稱可以不用首碼,比如方法名、類資料成員等(蘋果自己的除外)。

3)蘋果在它自己的類私人成員(包括私人資料成員和私人方法)加"_",這樣可以防止使用者在繼承系統類別時不小心覆蓋系統基類中的成員變數和成員方法。

4)類成員預設為@protected屬性,子類及類方法可以訪問。

3.協議(Protocol)命名

1)不與特定的類關聯,只是組合一組相關操作,協議名應與具體類無關。

2)與特定類關聯的一組操作集合的協議,協議名應與類名相同,例如:NSObject 協議。

4.標頭檔命名,一般與其中的類名相同,若包括若干相關函數及類型,則考慮用相關名稱。

5.類擴充命名

1)為已有架構中的某個類擴充 API:如果要在一個架構中聲明屬於另一個架構某個類的範疇類的方法,該標頭檔的命名形式為:原類名+“Additions”。如 Application Kit 中的 NSBundleAdditions.h 

6. 委託方法

1)名稱以發送訊息的類名開始,省略首碼並小寫第一個字母,

2)第一個參數為發送訊息的對象,當只有一個參數時除外,例如:通知

- (void) windowDidChangeScreen:(NSNotification
*)notification;

3)通知委派物件即將發生或已經發生用will,did,是否可以執行用should

7.方法參數

1)不要用one ,two ..具名引數,

2)一般也不用and,and,因為在多個參數時使用多個and不好。

8. 位元遮罩常量可以使用不具名枚舉。如:

enum {

    NSBorderlessWindowMask         = 0,

    NSTitledWindowMask                 = 1 << 0,

    NSClosableWindowMask            = 1 << 1,

    NSMiniaturizableWindowMask  = 1 << 2,

    NSResizableWindowMask          = 1 << 3

};

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.