文档章节

App性能优化

鼬殿
 鼬殿
发布于 2016/10/09 09:27
字数 525
阅读 8
收藏 0

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

1:应用启动时间 应用启动时,只加载启动相关的资源和必须在启动时加载的资源。

2:本地图片加载方式 本地图片加载常用方法有两种: (1),[UIImage imageNamed:@""] 图片多次使用时使用,需要使用此方式加入缓存 (2),[[UIImage alloc] initWithContentsOfFile:@""] 图片不常使用时,不使用缓存

3:不要阻塞主线程 开发中除了UI处理外,其它任务尽量放在后台线程加载。

4:UIView (1),如果你的View是透明的,需要设置opaque为No。 (2),使用UITableView和UICollectionView的重用,并缓存动态Cell的高度。 (3), 延迟加载不急需要的Views。 (4),尽量避免代码裁剪图片,如果必须需在后台线程处理。

5:缓存 缓存需要重复显示的数据,像网络请求、图片。

6:避免对象创建时过多消耗资源 假设应用中多次使用到日期处理,将保持日期对象全局唯一。

7:释放对象 (1),ARC中创建对象过多时,内存会持续升高,在需要时添加自动释放池释放不需要的资源。 (2),及时释放自己开辟的内存空间。

8:防止循环引用 (1),在头文件中尽量避免import导入头文件,使用@class 声明类,在.m文件中#import。 (2),在设置代理/block中使用相应的关键字引用对象。

9:数据存储 数据存储大致分plist、对象归档、sqlite。NSUserDefault适合存储小量数据,私密信息使用Keychain, sqlite适合大量数据,归档性能较低,尽量避免使用。

10:内存警告处理 当系统发出内存警告时,释放不必要的数据的三种方式。 AppDelegate中实现applicationDidReceiveMemoryWarning UIViewController 重写didReceiveMemoryWarning 注册通知:UIApplicationDidReceiveMemoryWarningNotification

11:性能检测 静态分析APP:菜单-Product-Analyze 可以定位未使用的变量,内存泄漏 分析APP每个操作占用时间: Instruments-Time profiler。 动态分析内存泄漏:Instruments-Leaks。

http://www.2cto.com/kf/201505/401059.html

© 著作权归作者所有

鼬殿
粉丝 1
博文 8
码字总数 9617
作品 0
松江
私信 提问
[译]React Native性能优化指北

[译]React Native性能优化指北 译注: 本文并没有详细的介绍具体的性能优化做法,作者给出的是一系列方法,需要我们自己根据实际情况,去采纳有用的一些点。 原文链接: blog.usejournal.co...

人人贷大前端技术中心
08/04
0
0
如何让你的App更流畅

本文由 伯乐在线 - sphynx 翻译,zhengjunchenzjc 校稿。未经许可,禁止转载! 英文出处:Junfeng Yang | Sarvar Dhillon。欢迎加入翻译组。 在过往的博文中,我们聊了监控App的性能的重要性...

刘星石
2016/03/11
98
0
移动APP性能——如何保证高质量

Klaus Enzenhofer在Web性能优化和用户体验管理方面有多年经验及专业知识。他在dynaTrace软件公司的卓越团队中心担任技术战略专家。身居这一职位,他推进了dynaTrace APP性能管理解决方案和W...

糖糖豆豆
2014/10/11
189
0
OSC 第 131 期高手问答 -- 移动 APP 性能评测与优化

OSCHINA 本期高手问答(10 月 24 日 - 10 月 30 日) 我们请来了@hanahliao(廖海珍)为大家解答关于移动 APP 性能评测与优化方面的问题。 @hanahliao(廖海珍),南开大学计算机科学与技术专业...

局长
2016/10/24
3.2K
27
iOS性能优化之“优化总体原则”(性能优化很重要,为什么你们都没有用?)

笔者由于在iOS开发过程中做过一些优化的工作,对iOS性能优化有一些粗浅的认识,一直想把自己这些经验,简单总结一下。 作为整个系列的第一篇,我打算针对iOS的优化中的一些总体原则做一些总结...

原来是泽镜啊
2018/04/25
13
0

没有更多内容

加载失败,请刷新页面

加载更多

003-ES集群

ES 集群 详情: https://my.oschina.net/u/3635512/blog/3140294 将实验机器/etc/elasticsearch/elasticsearch.yml 中配置文件改为 cluster.name: myes   #ES集群名称node.name:......

伟大源于勇敢的开始
14分钟前
4
0
法国电力项目二期正式验收

2019年12月10日, 法国电力项目二期正式验收 并就未来的合作技术方向进行了探讨: 去中心化数据存储/搜索引擎 可信计算/零知识证明 能源虚拟机改造 出席的人有: 法国电力总部 CIO&CTO Step...

怎当她临去时秋波那一转
30分钟前
2
0
谷歌助手

参照: https://www.mxblog.com.cn/mac%E7%89%88chrome%E6%B5%8F%E8%A7%88%E5%99%A8%E5%AE%89%E8%A3%85%E8%B0%B7%E6%AD%8C%E8%AE%BF%E9%97%AE%E5%8A%A9%E6%89%8B.html......

T型人才追梦者
38分钟前
5
0
索引延迟关联

前言 今天在看代码的时候学习到了一种索引的优化,就先在此记录下来。 具体 举个例子,原sql如下: SELECT * FROM TABLE WHERE INDEX = '' LIMIT 10000, 10; 现象 就算INDEX用了查询索引,...

无敌小杰杰
今天
5
0
tomcat_jdk安装,安装zrlog,nginx代理tomcat,第二个java应用

tomcat_jdk安装 要跑tomcat 首先要安装 jdk jdk 有两个版本 一个是 open jdk,一个是 oracle jdk open jdk 是 oracle jdk 的开源版本 两个版本都可以使用 这次实验先使用 open jdk 来做 如果...

doomcat
今天
11
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部