1,多使用字面量
在iOS開發(fā)中,基本都會使用的框架是Foundation框架,F(xiàn)oundation中使用最頻繁的是NSNumber,NSString,NSArray,NSDictionary這幾個類及它們的可變形式。
NSNumber *valueNumber = @12;
NSString *valueString = @"xingxing";
NSArray *valueArray = @[@"chang",@"xing"];
NSDictionary *valueDictionary = @{@"name":@"zhangsan",@"age":@18};
上面就是字面量的使用方式。有兩大好處,一是代碼簡潔,易于理解;二是對于NSArray和NSDictionary用字面量語法創(chuàng)建數(shù)組時要注意,若數(shù)組元素對象中有nil,有會拋出異常,而使用OC方法創(chuàng)建的遇到nil對象會提前結(jié)束數(shù)組和字典,導(dǎo)致數(shù)組或字典存儲的內(nèi)容不是我們想要的。
2,盡量使用常量來替代宏定義
#define CLASSNAMEWIDTH 10.0
宏定義是在預(yù)編譯時進行宏替換,常量沒有類型說明,宏多時不利于閱讀??梢灾匦露x,導(dǎo)致同一常量不同的使用可能會有不同的結(jié)果。
static const CGFloat kCLASSNAMEWidth = 10.0;
只在一個.m文件中使用,修改常量內(nèi)容會報錯;
如果要全局共享
//.h文件
extern NSString * const CLASSNAMEConstString;
//.m文件
NSString * const CLASSNAMEConstString = @"CLASSNAMEConstString";
因此在iOS開發(fā)中請盡量多使用const來代替宏定義(#define);隨著項目工程的逐漸增大,過多的宏定義還可能影響項目的編譯速度。