(25条提高iOSApp性能的建议和技巧.doc
文本预览下载声明
当我们开发iOS应用时,好的性能对我们的App来说是很重要的。你的用户也希望如此,但是如果你的app表现的反应迟钝或者很慢就会让你得到不好的评论。
?????然而,由于IOS设备的限制有时很难工作得很正确。我们开发时有很多需要我们记住这些容易忘记的决定对性能的影响。
?????这是为什么我写这篇文章的原因。这篇文章用备忘录的形式集合了25个技巧和诀窍可以用来提高你的app性能。所以耐心的阅读来给你未来的App一个很不错的提高。
Note:在优化代码之前,必须保证有个需要解决的问题!不要陷入pre-optimizing(预优化)你的代码。勤 用Instruments分析你的代码,发现任何一个需要提高的地方。Matt Galloway写了一个使用Instruments优化代码的的教程
以下这些技巧分为三个不同那个的级别---基础,中级,高级。
基础
这些技巧你要总是想着实现在你开发的App中。
???1.?用ARC去管理内存(Use ARC to Manage Memory)
??2.适当的地方使用reuseIdentifier(Use a reuseIdentifier Where Appropriate)
??3.尽可能设置视图为不透明(Set View as Opaque When Possible)
??4.避免臃肿的XIBs(Avoid Fat XiBs)
??5.不要阻塞主进程(Dont Block the Main Thread)
??6.调整图像视图中的图像尺寸(Size Images to Image Views)
??7.选择正确集合(Choose the Correct Collection)
??8.启用Gzip压缩(Enable GZIP Compression)
?
中级
这些技巧是当你遇到更复杂的情况的时候使用。
???9. 重用和延迟加载视图(Reuse and Lazy Load Views)
??10.缓存,缓存,缓存(Cache,Cache,Cache)
??11.考虑绘图(Consider Drawing)
??12.处理内存警告(Handle Memory Warnings)
??13.重用大开销对象(Reuse Expensive Objects)
??14.使用精灵表(Use Sprite Sheets )
??15.避免重复处理数据(Avoid Re-Processing Data)
??16.选择正确的数据格式(Choose the Right Data Format)
??17.适当的设置背景图片(Set ?Background Images Appropriately)
??18.减少你的网络占用(Reduce Your Web Footprint) ?
??19.设置阴影路径(Set the Shadow Path )
??20.你的表格视图Optimize Your Table Views)
??21.选择正确的数据存储方式(Choose Correct Data Storage Option)
?
高级
这些技巧你应该只在你很积极认为它们能解决这个问题,而且你觉得用它们很舒适的时候使用。
??22.加速启动时间(Speed up Launch Time )
??23.使用自动释放池(Use AutoRelease Pool)
??24.缓存图像(Cache Images-Or not?)
??25.尽可能避免日期格式化器(Avoid Date Formatters Where Possible) ?
没有其他的,一起去看看这些技巧吧!
基础的性能提升
1)用ARC去管理内存
??ARC是伴随IOS5 一起发布的,它用来消除常见的的内存泄漏。
??ARC是Automatic Reference Counting的缩写。它自动管理你代码中的retain/release循环,这样你就不必手动做这事儿了。
??下面这段代码展示了创建一个view的常用代码
1?UIView *view =[[UIView alloc] init];
2?//...
3?[self.view addSubview:view];
4?[view release];
??这里极其容易忘记在代码结束的地方调用release,ARC将会自动的,底层的为你做这些工作。
??除了帮助你你避免内存泄漏,ARC还能保证对象不再使用时立马被回收来提高你的性能。你应该在你的工程里多用ARC。
这里是一些学习更多关于ARC的非常棒的资源
??值得注意的是ARC不能消除所有的内存泄漏。你依然有可能内存泄漏,这主要可能是由于blocks(块),引用循环,CoreFoundation对象管理不善(通常是C结构体,或者是确实很糟
显示全部