Effective Objective-C 2.0 目录

第一章 : 熟悉Objective-C

第1项 : 熟悉Objective-C的本质

第2项 : 在头文件中尽可能少的引入其他头文件

第3项 : 优先使用字面语法而不是其他等效方法

第4项 : 优先使用常量而不是预处理器#define

第5项 : 使用枚举来表示状况,选项,状态码

第二章 : 对象, 消息传递机制, 和运行时

第6项 : 理解属性

第7项 : 在对象内部访问实例变量时用直接访问的方式

第8项 : 理解对象对等Understand Object Equality

第9项 : 使用类簇模式(工厂模式)来隐藏实现细节

第10项 : 使用关联对象来为已有类附上自定义数据

第11项 : 理解objc_msgSend的角色

第12项 : 理解消息转发机制

第13项 : 使用Method Swizzling来调试不清楚实现的方法

第14项 理解什么是类对象

第三章 : 接口和API设计

第15项 : 使用前缀名称来避免命名空间冲突

第16项 : 有一个指定的初始化程序

第17项 : 实现description方法

第18项 优先使用不可变对象

第19项 : 使用清晰且一致的命名

第20项 : 私有方法名带上前缀

第21项 : 理解Objective-C错误模型

第22项 : 理解NSCopying协议

第四章 : 协议和类别

第23项 : 使用delegate和data source协议进行内部对象通信

第24项 : 使用类别将类实现拆分成可管理的几个部分

第25项 : 总是记得在第三方类库的类别(category)上加上前缀

第26项 : 避免在类别里有属性

第27项 : 使用类附加目录来隐藏实现细节

第28项 : 使用协议来提供匿名对象

第五章 : 内存管理

第29项 : 理解引用计数

第30项 : 使用ARC,让引用计数变得更容易

第31项 : 只在dealloc中释放引用和清理观察者状态

第32项 : 注意到安全异常代码的内存管理

第33项 : 使用弱引用来避免引用循环

第34项 : 使用自动释放池来减少高内存占用

第35项 : 使用Zombies来帮助调试内存问题

第36项 : 避免使用retainCount

第六章 : 块(Blocks)和中央调度机制(GCD)

第37项 : 理解块(Blocks)

第38项 : 为公共块类型创建typedefs

第39项 : 使用Handler Blocks来减少代码分离

第40项 : 使用块引用对象来持有它们避免引用循环

第41项 : 优先使用Dispatch队列来加锁而不是Synchronization

第42项 : 优先使用GCD而不是performSelector和友元函数

第43项 : 知道什么时候使用GCD什么时候使用操作队列

第44项 : 使用调度队列来使用Platform Scaling

第45项 : 使用线程安全的dispatch_once来做单例

第46项 避免dispatch_get_current_queue

第七章 : 系统框架

第47项 熟悉系统框架

第48项 优先使用块遍历而不是for循环

第49项 : 为集合选择带有常规内存管理语义的桥接机制

第50项 : 使用NSCache而不是NSDictionary来缓存

第51项 : 保持initialize和load的方法实现精炼简洁

第52项 记住,NSTimer会保持(retain)它的目标(target)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值