1、OC语言的起源
- 对象所占内存空间是分配在“堆空间”中,绝不会分配在“栈”上,不能再栈中分配OC对象,所以不能有
NSString stackStr
这样的写法。 - OC是为C语言添加了面向对象的特性,是其超集。OC使用动态绑定的消息结构,也就是说,在运行时才会检查对象类型。接收一条消息之后,究竟应执行何种代码,由运行期环境而非编译器来决定。
2、在类的头文件中,尽量少引用其他头文件(向前声明)
3、多用字面量语法,少用与之等价的方法
4、多用类型常量,少用#define预处理指令
例如:
static NSString * const typeStr = @"something";
static const NSTimeInterval kDuration = 0.3;
5、用枚举表示状态、选项、状态码
6、理解“属性”
7、在对象内部尽量直接访问实例变量
8、对象等同性
9、以“类族模式”隐藏实现细节
10、在既有类中使用关联对象存放自定义数据