2012-03-05 27 views

回答

1

從您的應用程序的各個點訪問您的應用程序委託會在應用程序的這些組件之間創建一個強大的耦合。

基本上你正在通過你的應用程序使用全局變量,這通常是一個可改進的應用程序設計的好跡象。

變數通常不會生活在空氣中。它們存在於一個語境中。例如,如果你使用用戶名和密碼,你應該從系統的鑰匙串中獲取它們。整個認證過程應該包裝在一個認證類中,您可以在其中定義屬性。

如果您需要從應用程序的各個位置訪問信息,則必須將它們作爲初始值設定項的參數傳遞。這btw呈現您的個人組件可測試這是一件好事。

我的建議是重新考慮你的應用程序設計,而不是在以後的依賴性地獄中結束。

0

您可以將它們定義爲AppDelegate類中的屬性。例如:

@interface AppDelegate : UIResponder <UIApplicationDelegate> 
@property (retain, nonatomic) NSString *publicString; 

如果你想使他們readonly外部對象,那麼你可以定義如下:

1)AppDelegate.h

2)AppDelegate.m

@interface AppDelegate() 
@property (retain, readwrite, nonatomic) NSString *publicString; 
@end 

@implementation AppDelegate 
@synthesize publicString; 
// other methods below 
@end 
0

按名稱'defines.h'創建一個頭文件並在其中實現所有的定義和常量。 將該文件導入.pch文件中

這是最好的一個,它將與其他類分開。