EffectiveObjective-C 2.0 读书笔记

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];
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容