Point 1
在類的頭文件中盡量少引入其他頭文件,通過“前向聲明”該類,不用知道該接口的所有細節,將引入頭文件的時機盡量延后,只有在確定有需要的時候才引入,減少編譯時間。
@class
Point 2
多用類型常量,少用#define 預處理指令
static const NSString *str = @"String";
//作用域僅限于一個“編譯單元”
外界可見的常值變量
extern NSString *const EOCStringConstant;//在.h 文件中
NSString *const EOCStringConstant = @"Value";//在.m 文件中
Point 3
實現 description 方法
@property (nonatomic, copy, readonly) NSString *firstName;
@property (nonatomic, copy, readonly) NSString *lastName;
.m中實現
- (id)initWithFirstName:(NSString *)firstName
lastName:(NSString *)lastName
{
if (self = [super init]) {
_firstName = firstName;
_lastName = lastName;
}
return self;
}
- (NSString *)description
{
return [NSString stringWithFormat:@"<%@: %p, \"%@ %@\">",[self class],self,_firstName,_lastName];
}