原则
-
不做事情是最快的
-
耗时操作(IO等)放后台线程
-
不是立刻需要的东西使用懒加载
一些具体的技巧
使用Caesium获取方法级耗时数据,并找出优化点
在进入一个耗时的“重”方法之前使用轻量的 flag 判断是否需要去做
使用局部变量减少方法重复调用
声明类型时用 NS_ENUM,而不是 NSString
及时删除无用的老代码
谨慎使用 lock,通过良好的设计尽可能减小 lock 的影响范围
需要在循环中创建大量临时对象时使用 autoreleasepool 防止内存压力过大
了解一些常见的耗时大户(-[CLLocationManager location] 等),合理复用,并避免不必要的调用
少用 RAC