你可能不知道的iOS性能优化建议(来自前Apple工程师)
今天在推特上看到一篇关于性能优化不错的文章,是前苹果开发人员写的,翻译了一下与大家分享,原地址iOS Performance tips you probably didn’t know (from an ex-Apple engineer)
作为开发人员,良好的性能对于使我们的用户感到惊喜和喜悦是无价的。iOS用户具有很高的标准,如果你的应用程序反应很慢或在内存压力下崩溃,他们将停止使用它,或者更糟糕的是,你的评论会很糟糕。
在过去的6年中,我在Apple从事Cocoa框架和第一方应用程序的开发工作。我从事Spotlight,iCloud,应用程序扩展程序的工作,最近从事过Files的工作。
我注意到有一种很容易实现的目标,你可以在20%的时间内获得80%的性能提升。
这是一份性能提示清单,希望能给你带来最大的收益:
1. UILabel的成本超出你的想象
在内存使用方面,我们倾向于将lables视为轻量级的。最后,它们只是显示文本。UILabel实际上存储为位图,这很容易消耗兆字节的内存。
值得庆幸的是,UILabel的实现很聪明,并且只使用它需要的:
- 如果label是单色的,UILabel将选择kCAContentsFormatGray8Uint的calayercontents格式(每像素1字节),而非单色标签(例如,要显示"
你可能不知道的iOS性能优化建议(来自前Apple工程师)相关推荐
- java strim性能_你所不知道的Java性能优化之String!
Java性能优化之String字符串优化 1.字符串对象及其特点 Java中八大基本数据类型没有String类型,因为String类型是Java对char数组的进一步封装. String类的实现主要由 ...
- iOS性能优化之耗电量
iOS性能优化之耗电量 前言 最近在测试App的时候,发现手机特别容易发烫,我们都知道 ,如果手机容易发烫,那么耗电量肯定会相当大,手机电量使用的时间也会相对少:对此,我在工作之余抽了点时间,对手机的 ...
- iOS性能优化系列篇之“列表流畅度优化”工具篇
这一篇文章是iOS性能优化系列文章的的第二篇,主要内容是关于列表流畅度的优化.在具体内容的阐述过程中会结合性能优化的总体原则进行分析,所以建议大家在阅读这篇文章前先阅读一下上一篇文章:iOS性能优化系 ...
- iOS性能优化 - 耗电优化
耗电来源: CPU处理: 网络: 定位: 图像. 如何优化: 1. 尽可能降低CPU.GPU功耗; 2. 少用定时器: 3. 优化I/O操作: 尽量不要频繁写入小数据,最好批量一次性写入: 读写大量重 ...
- iOS 性能优化总结
原文链接:https://github.com/skyming/iOS-Performance-Optimization 关于 iOS 性能优化梳理: 基本工具.业务优化.内存优化.卡顿优化.布局优化 ...
- QML 性能优化建议(二)
前言 接前一篇文章,QML 性能优化建议(一),这里接着来介绍性能优化建议的第二部分:通用接口元素,在这里会介绍一些常见的元素,如:图片.布局之类的写法. 通用接口元素 图片 图片是任何用户界面的重要 ...
- Windows Phone性能优化建议
Windows Phone性能优化建议 原文:Windows Phone性能优化建议 使用background thread解码图片 在Windows Phone中支持的图片格式有jpg和png,微软 ...
- 笔记45 | 代码性能优化建议[转]
地址 笔记45 | 代码性能优化建议[转] 目录 前言 避免创建不必要的对象 选择Static而不是Virtual 常量声明为Static Final 避免内部的Getters/Setters 使用增 ...
- [react] 你知道的react性能优化有哪些方法?
[react] 你知道的react性能优化有哪些方法? shouldComponentUpdate PureComponent :Class Component React.Memo :Functio ...
- oracle 优化建议,oracle 性能优化建议小结
原则一:注意WHERE子句中的连接顺序:ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前,那些可以过滤掉最大数量记录的条件必须写在WHERE子 ...
最新文章
- Spring Cloud Alibaba 系统保护 - 限流与熔断:Sentinel 在项目中的最佳实践
- Bittrex交易所宣布:BCH正式加入美元交易市场
- 蓝桥杯练习系统算法训练习题加答案java版本
- 32拟合分析_SigmaPlot14.5:指导用户逐步完成图形创建和数据分析过程
- Python中if __name__ == ‘__main__‘:的作用和原理(自用笔记)
- 【软件周刊】D语言卷土重来,Vue.js 应获 1024 个赞,小薇可以一键启动了
- 记录自己灵感闪现的开发语录 每日更新 记录变强或者变得更菜的过程
- C++:50---虚析构函数
- .net中所用到的编码名称和对应的代码页(Encoding.GetEncoding) .
- php提交失败阻止提交数据,php – 在刷新浏览器时阻止重新提交提交
- 数组分割问题(转载学习)
- 如何解决 MacBook Pro Touch ID不起作用?
- python try except continue_python中 try、except、finally执行顺序
- 天翼网关密码忘记(猫密码忘记)
- python pytz下载_使用 pytz 处理 Python 中的时区问题
- WLAN RTT (IEEE 802.11mc)
- php怎么写炫彩字,Photoshop打造超酷的炫彩字
- solr 查询出异常org.apache.solr.search.SyntaxError: Cannot parse
- css背景透明(css背景透明度怎么设置)
- 物联网之boa服务器
热门文章
- java strim性能_你所不知道的Java性能优化之String!