读《Effective Objective-C 2.0》
1、OC语言的起源
- 对象所占内存空间是分配在“堆空间”中,绝不会分配在“栈”上,不能再栈中分配OC对象,所以不能有
NSString stackStr
这样的写法。 - OC是为C语言添加了面向对象的特性,是其超集。OC使用动态绑定的消息结构,也就是说,在运行时才会检查对象类型。接收一条消息之后,究竟应执行何种代码,由运行期环境而非编译器来决定。
2、在类的头文件中,尽量少引用其他头文件(向前声明)
3、多用字面量语法,少用与之等价的方法
4、多用类型常量,少用#define预处理指令
例如:
static NSString * const typeStr = @"something";
static const NSTimeInterval kDuration = 0.3;