[英]Are there any useful naming conventions for *your* constant/static variable in Cocoa?
我知道常量以k
前綴開頭,但是有沒有人有自己的常量前綴,所以他們可以輕松地完成常量,而不是Apple的?
由於我的公司名稱,我在課程中使用了三個字母的前綴,讓我們假裝它是OMG
。 我嘗試用omgkConstantName
為我的常量加前綴,但這並不是很令人滿意。 我也用kk
或ok
來玩( o來自OMG。)或者我應該做kOMGConstantName,這似乎更多Cocoa-ish?
快速找到自己的常量似乎非常有用,就像你想要進入自己的類一樣。 有沒有人這樣做? 可可風格可怕嗎?
另外,是否有一個很好的靜態變量命名約定,你只能在一個類中使用,比如JSON字典的鍵? 他們應該有k
嗎? 他們應該從大寫開始,還是遵循正常的案例慣例?
// Static Variables
static NSString *searchTextKey = @"searchText";
static NSString *searchResultsKey = @"searchResults";
(more)
Apple的Cocoa編碼指南建議對枚舉使用與函數相同的命名約定。 遵循這個建議, OMGConstantName是正確的。
我嘗試一直使用kJAFoo
(或其中XX是項目前綴的kXXFoo
)作為我的公共常量 - 特別是實際的const
是導出符號 - 但通常在實現文件中使用kFoo
作為枚舉或static const
。 類似地,我在使用導出的全局變量的極少數情況下使用sFoo
作為靜態變量和gJAFoo
。
但是,這些情況都不如命名空間類(以及導入類中的類別中的方法)那么重要,因為大多數類型的沖突將在編譯或鏈接時而不是運行時出現。
我通常會使常量Pascal大小寫。
如果您選擇遵循在所有內容上添加前綴的“命名空間約定”,那么您也可以使用它。
所以我通常會這樣做
static NSString *SearchTextKey = @"searchText";
你可以選擇命名它雖然它會是它(假設你的前綴是ZK)
static NSString *ZKSearchTextKey = @"searchText";
一般來說,我只根據谷歌的推薦(或者至少是在我的命名約定時)確定了多個項目中使用的命名空間。
最重要的是,無論你采取何種慣例。 堅持並保持一致(至少在給定的項目中)。 在某個時刻,猜測自己只是浪費時間。
我通常遵循與類相同的前綴/大小寫約定,所以在Cocoa有NSTouchPhaseBegan
我可能有GLTuneNameKey
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.