我有一個數字api常量列表,我想在代碼中的一個位置收集,並且想知道如何做到這一點的最佳方法。這裏是我迄今爲止..在代碼中存儲和引用第三方API密鑰和常量列表的最佳方式是什麼?
靜態數組與所有的常量...
static NSDictionary* kApiConstants =
[NSDictionary dictionaryWithObjectsAndKeys:
@"crittercism-app-id", @"myAppId",
@"crittercism-key", @"myAppKey",
@"crittercism-secret", @"mySecretKey",
@"content-server-url-dev", @"http://my-dev-url/",
@"content-server-url-stg", @"http://my-staging-url",
@"content-server-url-pro", @"http://my-production-url",
nil];
然後我有數組中的項目的快速檢索宏...
#define MYAPIKEY(x) [kApiConstants objectForKey:x]
我喜歡這個設置。它使代碼更清晰,可以在我們的git倉庫中的分支之間進行整體閱讀和合並。我希望在構建/編譯時具有的一個特性是,如果字符串不在字典中,那麼構建和/或編譯器錯誤會被標記以指示這一點。
我確信其他人已經遇到過這種情況,因爲有很多第三方庫,sdk和你在一個項目中有什麼難以跟蹤他們。對於那些願意分享什麼系統來提供幫助的人?
在我的情況下,這是一個iOS項目,但情況適用於任何類型的項目。
NSDictionary不會成爲一個好的模型,你可以用更多的代碼創建一個真正的類。另外,當我看到一個宏,我畏縮不知道是什麼, – zaph