İOS uygulamamdaki modellerin çoğu bir web sunucusunu sorguluyor. Sunucunun temel URL'sini depolayan bir yapılandırma dosyasına sahip olmak istiyorum. Şunun gibi görünecek:
// production
// static NSString* const baseUrl = "http://website.com/"
// testing
static NSString* const baseUrl = "http://192.168.0.123/"
Bir satırı veya diğerini yorumlayarak, modellerimin işaret ettiği sunucuyu anında değiştirebilirim. Sorum şu, iOS'ta küresel sabitleri depolamak için en iyi uygulama nedir? Android programlamada, bu yerleşik dizeler kaynak dosyamız var . Herhangi bir Aktivitede (bir UIViewController'ın eşdeğeri ), bu dize sabitlerini şununla alabiliriz:
String string = this.getString(R.string.someConstant);
İOS SDK'nın sabitleri depolamak için benzer bir yeri olup olmadığını merak ediyordum. Değilse, bunu yapmak için Objective-C'de en iyi uygulama nedir?
"constants.h"
Yaklaşımı kullanıyorum,static
değişkenleri temel alıyorum#ifdef VIEW_CONSTANTS ... #endif
. Bu nedenle, uygulama çapında bir sabitler dosyam var, ancak diğer kod dosyalarımın her biri , sabitler dosyasından#define
önce eklenecek farklı sabit kümelerinden#include
oluşuyor (tüm bu "tanımlanmış ancak kullanılmayan" derleyici uyarılarını durdurur).