1. UI方面
正确使用reuseidentifier
尽量让UIView的opaque属性为yes,不透明
避免使用庞大的xib,可以使用storyboard,xib是加载所有的资源。导致程序不是在用的时候再加载
不要在imageview中调整图片大小,可以在background线程中调整完,再显示
使用图层阴影时,尽量使用shadow path ,自己计算,不要只是设置阴影参数,每次渲染都是计算机计算
延迟加载view,学习uiscrollview
注意core animation 的off screen 和blended(透明混合)
设置图片背景有两种方式,一种时colorWithPatternImage,这个是重复图片填充,如果是全幅图画,建议使用imageview作为子view
简化web view,尽量使用原生js
UITableView,如果内容来自web使用异步加载,减少subviews数量
图片加载分imageNamed和imageWithContentsOfFile,前者缓存图片,后者不缓存
2. 内存方面
NSDataFormatter和NSCalendar初始化很慢,建议使用单例模式,只初始化一次
@AutoReleasePool 使用场景
使用NSCache缓存数据,让数据访问达到3层,先访问cache,然后访问文件
正确使用NSArray和NSSet,NSArray是内存连续的数组,NSSet是内存离散的,但是它使用了hash算法,查找非常快