EffectiveObjective-C 2.0 读书笔记

2015-12-06  本文已影响44人  一铭_

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];
}
上一篇 下一篇

猜你喜欢

热点阅读