成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Cocoa 編碼指南 為實例變量和數據類型命名

移動開發 iOS
在面向對象軟件庫的設計過程中,開發人員經常忽視對類、方法、函數、常量以及其他編程接元素的命名。本節討論為實例變量和數據類型命名。

Cocoa 編碼指南 為實例變量數據類型命名是本文要介紹的內容,本節描述實例變量、常量、異常、以及通知的命名約定。先來看內容。

實例變量

在為某個類添加實例變量時,請記住下面幾個因素:

避免創建公共實例變量。開發人員應該關心對象的接口,而不是對象的數據存儲方式這樣的細節。

請把實例變量顯式聲明為@private或者@protected。如果您預期所提供的類會被子類化,并且子類可能需要父類的數據, 則請使用@protected指令來修飾實例變量。

請確保實例變量的名稱能夠扼要地描述它所保存的屬性。

如果實例變量將作為類對象的可訪問屬性,則請務必為其編寫存取方法。

常量

根據常量創建方式不同,其命名規則也有所差異。

枚舉常量

請使用枚舉類型來表示一群相互關聯的整數值常量。

枚舉常量及其所屬的通過typedef定義的數據類型遵循和函數一樣的命名約定(請查看“為函數命名”一節)。下面是一個取自NSMatrix.h文件的例子

  1. typedef enum _NSMatrixMode {   
  2.     NSRadioModeMatrix           = 0,   
  3.     NSHighlightModeMatrix       = 1,   
  4.     NSListModeMatrix            = 2,   
  5.     NSTrackModeMatrix           = 3   
  6. } NSMatrixMode;  

請注意,在上述例子中,typedef標簽不是一定要具有的。

您也可以創建匿名的枚舉類型來表示諸如位掩碼這樣的事物。例如:

  1. enum {   
  2.     NSBorderlessWindowMask      = 0,   
  3.     NSTitledWindowMask          = 1 << 0,   
  4.     NSClosableWindowMask        = 1 << 1,   
  5.     NSMiniaturizableWindowMask  = 1 << 2,   
  6.     NSResizableWindowMask       = 1 << 3   
  7. };  

使用const 創建的常量

請使用const 來創建浮點值常量。如果某個整數值常量和其他的常量不相關,您也可以使用const來創建,否則,則應使用枚舉類型。

下面的聲明展示了const常量的格式:

  1. const float NSLightGray;  

使用枚舉類型聲明的常量遵循和函數相同的命名約定。(請參考“為函數命名”一節)。

其他類型的常量

通常情況下, 請不要使用#define預處器理命令創建常量。對于整數值常量,請使用枚舉類型創建,而對于浮點值常量,請使用const修飾符創建,這和前述的原則一樣。

有些符號,預處理器需要對其進行計算,以便決定是否要對某一代碼塊進行處理,則它們應該使用大寫字符表示。例如:

  1. #ifdef DEBUG  

請注意,編譯器定義的宏,其開頭和結尾要具有兩個下劃線字符。例如:

  1. __MACH__  

對于通告名稱或字典關鍵字的字符串,請將其定義為常量。通過使用字符串常量,編譯器可以驗證字符串是否被正確賦值(也就是說, 編譯器將執行拼寫檢查)。Cocoa框架提供很多字符串常量的例子,例如:

  1. APPKIT_EXTERN NSString *NSPrintCopies;  

在實現文件中,NSString的實際值被指定為常量。(請注意,APPKIT_EXTERN宏經過計算之后是Objective-C中的extern關鍵字)。

異常和通告

異常和通告的名稱遵循相似的命名規則,但是我們為二者推薦的使用模式并不相同。

異常

盡管您可以隨意地將異常(即NSException類和一些相關聯的函數所提供的機制)用于任何目的,但是通常情況下,cocoa不會利用他們來處理常規的、可預期的錯誤條件。這類錯誤應使用諸如nil、 NULL、 NO這樣的返回值或者錯誤碼來表示。通常,Cocoa把異常用于表示諸如數組索引越界這樣的編程錯誤。

異常使用全局的NSString對象來標識,其名稱按如下的方式進行組合:

  1. [Prefix] + [UniquePartOfName] + Exception  

異常名稱中的具有唯一性的那部分,其組成詞應該拼寫在一起, 并且每個單詞的首字符要大寫。下面是一些例子:

  1. NSColorListIOException   
  2. NSColorListNotEditableException   
  3. NSDraggingException   
  4. NSFontUnavailableException   
  5. NSIllegalSelectorException  

通告

如果某個類含有委托,則通過所定義的委托方法,類的委托可以收到大部分通告。通告的名稱應該反映相應的委托方法。例如,一旦應用程序發送一則NSApplicationDidBecomeActiveNotification的通告,則全局NSApplication對象的委托就會自動進行注冊,這樣它就可以接收到一條applicationDidBecomeActive:的消息。

通告使用全局的NSString對象進行標識,其名稱按如下的方式組合:

  1. [Name of associated class] + [Did | Will] + [UniquePartOfName] + Notification  

例如:

  1. NSApplicationDidBecomeActiveNotification   
  2. NSWindowDidMiniaturizeNotification   
  3. NSTextViewDidChangeSelectionNotification   
  4. NSColorPanelColorDidChangeNotification  

小結:關于Cocoa 編碼指南 為實例變量數據類型命名的 內容介紹完了,希望本文對你有所幫助!推薦幾篇相關文章:

Cocoa 編碼指南 代碼命名基礎: http://mobile.51cto.com/iphone-274085.htm
Cocoa 編碼指南 為函數命名: http://www.ekrvqnd.cn/php/viewart.php?artID=274108  
Cocoa 編碼指南 為方法命名: http://www.ekrvqnd.cn/php/viewart.php?artID=274104
Cocoa 編碼指南 為實例變量和數據類型命名:http://www.ekrvqnd.cn/php/viewart.php?artID=274094
Cocoa 編碼指南 框架開發者使用技巧和技術http://www.ekrvqnd.cn/php/viewart.php?artID=274094

責任編輯:zhaolei 來源: 互聯網
相關推薦

2011-07-07 10:29:35

Cocoa 方法 框架

2011-07-07 10:39:07

Cocoa 函數

2011-07-07 10:07:19

Cocoa 框架

2023-10-17 07:57:56

Python數據類型

2024-01-12 09:00:22

Swift常量數據類型

2022-03-01 23:31:29

Python編程語言變量

2011-08-04 09:56:30

Objective-C 變量 數據類型

2009-06-24 08:04:18

Hibernate基礎核心接口數據類型

2021-04-05 08:22:54

Python進制數據類型

2018-11-15 09:45:47

JavaScript數據類型變量

2011-06-17 16:23:49

Cocoa蘋果

2023-03-27 10:04:27

數據類型浮點型布爾型

2009-08-14 13:52:18

C#判斷數據類型

2011-07-07 10:50:09

Cocoa 框架

2011-07-07 13:30:32

Cocoa Core

2023-05-26 00:02:31

SDS數據編碼

2013-05-10 15:27:07

R語言

2020-10-26 13:46:07

Java基礎入門篇

2011-07-07 14:22:27

Cocoa 對象 生命周期

2011-06-17 15:57:46

CocoaXcode蘋果
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品成人一区二区三区 | 夜夜爽99久久国产综合精品女不卡 | 中文无吗 | 黄色片a级| 欧美综合久久久 | 超碰av免费 | 99亚洲精品 | 99免费视频 | 成人午夜激情 | 亚洲在线一区二区 | 日韩1区| 亚洲最新网址 | 亚洲人a| 三级成人在线观看 | 91久久视频 | 91精品国产自产在线老师啪 | 久久久久国产一区二区三区四区 | 午夜播放器在线观看 | 国产精品久久久久久婷婷天堂 | 午夜免费电影院 | 国产精品自产拍在线观看蜜 | 国产中文字幕在线观看 | 我想看一级黄色毛片 | 亚洲精品一区二区网址 | 成人免费看电影 | wwwsihu| 日韩三级免费网站 | aaaa日韩 | 日本理论片好看理论片 | 免费在线视频精品 | 国产精品美女一区二区 | 看片91 | 久久国产日韩欧美 | 成人在线观看免费爱爱 | 69av在线视频 | 久久亚洲一区二区 | 午夜精品一区二区三区三上悠亚 | 18性欧美 | 96久久久久久 | 91精品国产色综合久久 | 大久 |