iOS性能指标
性能指标:面向用户的各种属性。
在考虑优化应用性能时通常从以下方面入手:
内存
- 内存涉及运行应用所需的RAM最小值,以及应用消耗的内存平均值和峰值。最小内存值会严重限制硬件,而更高的内存平均值和峰值意味着更多的后台应用会被强制关闭。
- 确保没有内存泄漏。随时间持续增长的内存消耗可能会因为内存不足的异常而崩溃。
电量消耗
考虑执行时间和CPU资源的利用(高效的数据结构和算法 + 高效地使用硬件)。
初始化时间
惰性初始化是个好方法,但也不能让用户总是在执行后续任务时等待。
执行速度
并行处理、任务分发
响应速度
一切优化和权衡最终都应该体现在响应速度上。
本地存储
从本地存储载入和同步数据要迅速便捷;
选择合理的数据和数据结构;
本地存储提供清除数据选项。
互操作性
- 多应用互操作和数据共享机制:UIActivityViewController、深层链接、MultipeerConnectivity框架等。
- 为深层链接定义良好的URL结构 + 编写优秀的代码来解析URL
- 精确识别共享数据
- 共享数据安全问题
网络环境
为适应不同的网络状况,添加进度指示、错误信息
带宽
带宽的优化使用
数据刷新
是否需要周期性刷新
多用户支持
需要高效支持的场景:
- 添加新用户
- 在不同用户之间更新
- 在不同用户之间切换
- 用户数据的界限应该简洁,没有bug
单点登录(Single Sign-on :SSO)
跨应用的数据共享、分享状态、跨应用同步、同步的安全性。
安全
主要考虑通信数据、本地数据、共享数据的加密。
但同时,数据需要更多的计算、内存和存储,这与最大化运行速度、最小化内存和存储使用的目标相冲突;
多个安全层会影响性能;
考虑硬件设备的计算能力;
如何设定安全的基线,需要参考对用户群体的统计分析。
崩溃