logo
分类于: 计算机基础 互联网

简介

高性能iOS应用开发

高性能iOS应用开发 7.6分

资源最后更新于 2020-07-12 01:53:51

作者:[美] Gaurav Vaish

译者:梁士兴

出版社:人民邮电出版社

出版日期:2017-01

ISBN:9787115451200

文件格式: pdf

标签: iOS Objectiv-C 计算机 iOS进阶 编程语言 编程 TN无线电电子学、电信技术

简介· · · · · ·

性能对用户体验有着至关重要的影响。本书将介绍对用户体验产生负面影响的各个方面,并概述如何优化iOS应用的性能。全书共5个部分,主要从性能的衡量标准、对应用至关重要的核心优化点、iOS应用开发特有的性能优化技术以及性能的非代码方面,讲解了应用性能的优化问题。本书的主要目的是展示如何从工程学的角度编写最优代码。本书适合已经具有Objective-C和iOS实践经验的开发人员阅读。

想要: 点击会收藏到你的 我的收藏,可以在这里查看

已收: 表示已经收藏

Tips: 注册一个用户 可以通过用户中心得到电子书更新的通知哦

目录

译者序  xv
前言  xvii
第一部分  开始
第1章 移动应用的性能  3
1.1 定义性能  3
1.2 性能指标  4
1.2.1 内存  4
1.2.2 电量消耗  4
1.2.3 初始化时间  4
1.2.4 执行速度  5
1.2.5 响应速度  5
1.2.6 本地存储  5
1.2.7 互操作性  6
1.2.8 网络环境  7
1.2.9 带宽  7
1.2.10 数据刷新  8
1.2.11 多用户支持  8
1.2.12 单点登录  9
1.2.13 安全  9
1.2.14 崩溃  10
1.3  应用性能分析  10
1.3.1  采样  10
1.3.2  埋点  10
1.4  测量  11
1.4.1  设置工程与代码  11
1.4.2  设置崩溃报告  12
1.4.3  对应用埋点  13
1.4.4  日志  17
1.5  小结  19
第二部分 核心优化
第2章 内存管理  23
2.1  内存消耗  23
2.1.1  栈大小  24
2.1.2  堆大小  25
2.2  内存管理模型  27
2.3  自动释放对象  28
2.4  自动释放池块  30
2.5  自动引用计数  32
2.6  引用类型  35
2.6.1  变量限定符  36
2.6.2  属性限定符  37
2.7  实践环节  38
2.7.1  照片模型  38
2.7.2  更新故事板  38
2.7.3  方法实现  39
2.7.4  输出分析  41
2.8  僵尸对象  42
2.9  内存管理规则  43
2.10  循环引用  43
2.10.1  避免循环引用的规则  45
2.10.2  循环引用的常见场景  46
2.10.3  观察者  56
2.10.4  返回错误  59
2.11  弱类型:id  59
2.12  对象寿命与泄漏  61
2.13  单例  62
2.14  找到神秘的持有者  64
2.15  最佳实践  65
2.16  生产环境的内存使用情况  66
2.17  小结  67
第3章 能耗  68
3.1  CPU  68
3.2  网络  70
3.3  定位管理器和GPS  73
3.3.1  最佳的初始化  74
3.3.2  关闭无关紧要的特性  75
3.3.3  只在必要时使用网络  76
3.3.4  后台定位服务  77
3.3.5  NSTimer、NSThread 和定位服务  77
3.3.6  在应用关闭后重启  78
3.4  屏幕  78
3.4.1  动画  78
3.4.2  视频播放  78
3.4.3  多屏幕  79
3.5  其他硬件  83
3.6  电池电量与代码感知  83
3.7  分析电量使用  85
3.8  最佳实践  86
3.9  小结  88
第4章 并发编程  89
4.1  线程  89
4.2  线程开销  90
4.2.1  内核数据结构  90
4.2.2  栈空间  90
4.2.3  创建耗时  90
4.3  GCD  91
4.4  操作与队列  92
4.5  线程安全的代码  93
4.5.1  原子属性  93
4.5.2  同步块  94
4.5.3  锁  96
4.5.4  将读写锁应用于并发读写  100
4.5.5  使用不可变实体  102
4.5.6  使用集中的状态更新服务  106
4.5.7  状态观察者与通知  110
4.5.8  异步优于同步  114
4.6  小结  116
第三部分 iOS 性能
第5章 应用的生命周期  119
5.1  应用委托  119
5.2  应用启动  121
5.2.1  首次启动  123
5.2.2  冷启动  129
5.2.3  热启动  135
5.2.4  升级后启动  137
5.3  推送通知  138
5.3.1  远程通知  138
5.3.2  本地通知  141
5.4  后台拉取  142
5.5  小结  144
第6章 用户界面  145
6.1  视图控制器  146
6.1.1  视图加载  149
6.1.2  视图层级  150
6.1.3  视图可见性  152
6.2  视图  154
6.2.1  UILabel  155
6.2.2  UIButton  156
6.2.3  UIImageView  157
6.2.4  UITableView  158
6.2.5  UIWebView  161
6.2.6  自定义视图  164
6.3  自动布局  170
6.4  尺寸类别  171
6.5  iOS  8 中新的交互特性  175
6.5.1  交互式通知  175
6.5.2  应用扩展  176
6.6  小结  179
第7章 网络  180
7.1  指标和测量  180
7.1.1  DNS 查找时间  181
7.1.2  SSL 握手时间  182
7.1.3  网络类型  183
7.1.4  延迟  188
7.1.5  网络API  190
7.2  应用部署  190
7.2.1  服务器  191
7.2.2  请求  191
7.2.3  数据格式  192
7.3  工具  193
7.3.1  网络链接调节器  193
7.3.2  AT & T 应用资源优化器  194
7.3.3  Charles  196
7.4  小结  199
第8章 数据共享  200
8.1  深层链接  200
8.2  剪贴板  205
8.3  共享内容  208
8.3.1  文档交互  209
8.3.2  活动  215
8.4  iOS  8 扩展  217
8.4.1  配置操作扩展和共享扩展  219
8.4.2  操作扩展  220
8.4.3  共享扩展  221
8.4. 4 文档提供者扩展  223
8.4.5  应用群组  228
8.5  小结  230
第9章 安全  231
9.1  应用访问  232
9.1.1  匿名访问  232
9.1.2  认证访问  234
9.2  网络安全  237
9.2.1  使用HTTPS  237
9.2.2  使用证书锁定  238
9.3  本地存储  242
9.4  数据共享  248
9.5  安全和应用性能  248
9.6  清单  248
9.7  小结  250
第四部分 代码之外
第10章 测试及发布  253
10.1  测试类型  253
10.2  定义  254
10.3  单元测试  255
10.3.1  设置  255
10.3.2  编写单元测试  256
10.3.3  代码覆盖率  258
10.3.4  异步操作  262
10.3.5  Xcode  6 福利:性能单元测试  263
10.3.6  模拟依赖  265
10.3.7  其他框架  268
10.4  功能测试  268
10.4.1  设置  269
10.4.2  编写功能测试  271
10.4.3  工程结构  273
10.5  隔离依赖  274
10.6  测试及组件设计  275
10.7  持续集成与自动化  277
10.8  最佳实践  278
10.9  小结  282
第11章 工具  283
11.1  Accessibility Inspector  283
11.1.1  Xcode Accessibility Inspector  284
11.1.2  iOS Accessibility Inspector  285
11.2  Instruments  288
11.2.1  使用Instruments  289
11.2.2  活动监视器  291
11.2.3  内存分配  292
11.2.4  内存泄漏  295
11.2.5  网络  296
11.2.6  时间分析器  297
11.3  Xcode 视图调试器  298
11.4  PonyDebugger  300
11.5  Charles  304
11.6  小结  309
第12章 埋点与分析  310
12.1  词汇  310
12.2  埋点  312
12.2.1  规划  312
12.2.2  实现  314
12.2.3  部署  316
12.3  分析  317
12.4  真实用户监控  317
12.4.1  分析与真实用户监控对比  317
12.4.2  使用真实用户监控  318
12.5  小结  318
第五部分 iOS  9
第13章 iOS  9  321
13.1  应用的生命周期  321
13.1.1  通用链接  322
13.1.2  搜索  324
13.1.3  搜索最佳实践  328
13.2  用户界面  329
13.2.1  UIKit 框架  330
13.2.2  Safari 服务框架  332
13.3  扩展  335
13.3.1  内容拦截扩展  336
13.3.2  Spotlight 索引扩展  338
13.4  应用瘦身  339
13.4.1  分割  339
13.4.2  按需加载资源  340
13.4.3  bitcode  343
13.5  小结  344
第14章 iOS  10  345
14.1  Siri 扩展  346
14.2  改进的通知  348
14.2.1  申请权限  348
14.2.2  触发器  348
14.2.3  为通知添加交互  349
14.2.4  完全自定义展示通知  350
14.2.5  通知服务扩展  352
14.3  iMessage 扩展  354
14.4  VoIP 支持  357
作者介绍  359
封面介绍  359