图书介绍
iOS开发进阶PDF|Epub|txt|kindle电子书版本网盘下载
![iOS开发进阶](https://www.shukui.net/cover/68/34408646.jpg)
- 唐巧著 著
- 出版社: 北京:电子工业出版社
- ISBN:9787121247453
- 出版时间:2015
- 标注页数:244页
- 文件大小:27MB
- 文件页数:258页
- 主题词:移动终端-应用程序-程序设计
PDF下载
下载说明
iOS开发进阶PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 引言1
1.1 我为什么要写本书1
1.1.1 我的构思1
1.1.2 内容导读1
1.1.3 目标读者2
1.1.4 随书示例代码和勘误2
1.1.5 致谢2
1.2 如何提高iOS开发技能3
1.2.1 阅读博客3
1.2.2 读书3
1.2.3 看WWDC视频4
1.2.4 看苹果的官方文档4
1.2.5 看开源项目的代码4
1.2.6 多写代码,多思考4
1.2.7 多和同行交流5
1.2.8 分享5
第一部分:iOS开发工具9
第2章 使用CocoaPods做依赖管理9
2.1 CocoaPods简介9
2.2 CocoaPods的安装和使用10
2.2.1 CocoaPods的安装10
2.2.2 使用CocoaPods的镜像索引10
2.2.3 使用CocoaPods11
2.2.4 查找第三方库11
2.3 注意事项12
2.3.1 关于.gitignore12
2.3.2 为自己的项目创建podspec文件12
2.3.3 使用私有的pods12
2.3.4 不更新podspec12
2.3.5 生成第三方库的帮助文档13
2.3.6 原理13
第3章 网络封包分析工具Charles15
3.1 Charles简介15
3.2 Charles的安装和使用16
3.2.1 安装Charles16
3.2.2 安装SSL证书16
3.2.3 将Charles设置成系统代理17
3.2.4 Charles主界面介绍18
3.2.5 过滤网络请求18
3.3 使用Charles协助iOS开发19
3.3.1 截取iPhone上的网络封包19
3.3.2 模拟慢速网络21
3.4 高级功能22
3.4.1 截取SSL信息22
3.4.2 修改网络请求内容23
3.4.3 修改服务器返回内容25
3.5 Map功能25
3.6 Rewrite功能27
3.7 Breakpoints功能29
3.8 总结30
3.9 参考链接30
第4章 界面调试工具Reveal31
4.1 Reveal简介31
4.2 Reveal的使用32
4.2.1 用Reveal连接模拟器调试32
4.2.2 用Reveal连接真机调试34
4.2.3 用Reveal调试其他应用界面34
4.2.4 总结35
4.2.5 参考资料36
第5章 移动统计工具Flurry37
5.1 Flurry简介37
5.2 Flurry的基本使用38
5.2.1 注册和下载对应SDK38
5.2.2 集成SDK40
5.2.3 自定义统计项42
5.2.4 查看统计结果43
5.2.5 统计Crashlog44
5.3 对比和总结45
5.3.1 和其他统计分析平台的对比45
5.3.2 总结45
第6章 崩溃日志记录工具Crashlytics47
6.1 Crashlytics简介47
6.2 Crashlytics的使用49
6.3 实现原理和使用体会52
第7章 App Store统计工具App Annie55
7.1 App Annie简介55
7.2 App Annie的使用56
7.3 App Annie账号的注册及配置59
7.4 和其他工具的对比60
7.4.1 官方的命令行工具60
7.4.2 其他类似服务61
7.4.3 功能对比61
第8章 Xcode插件63
8.1 Xcode插件管理工具Alcatraz63
8.1.1 简介63
8.1.2 安装和删除64
8.1.3 使用64
8.1.4 插件路径66
8.2 关于Xcode的插件机制66
8.3 常用Xcode插件66
8.3.1 KSImageNamed66
8.3.2 XVim67
8.3.3 FuzzyAutocompletePlugin67
8.3.4 XToDo67
8.3.5 BBUDebuggerTuckAway68
8.3.6 SCXcodeSwitchExpander68
8.3.7 deriveddata-exterminator68
8.3.8 VVDocumenter69
8.3.9 ClangFormat69
8.3.10 ColorSense69
8.3.11 XcodeBoost70
第9章 其他工具介绍71
9.1 取色工具:数码测色计(DigitalColor Meter)71
9.1.1 前言71
9.1.2 使用介绍71
9.1.3 其他类似工具:xScope72
9.2 其他图形工具73
9.2.1 ImageOptim73
9.2.2 马克鳗74
9.2.3 Dash74
9.2.4 蒲公英75
9.3 命令行工具75
9.3.1 nomad75
9.3.2 xctool76
9.3.3 appledoc76
第二部分:iOS开发实践81
第10章 理解内存管理81
10.1 引用计数81
10.1.1 什么是引用计数,原理是什么81
10.1.2 我们为什么需要引用计数83
10.1.3 不要向已经释放的对象发送消息85
10.1.4 循环引用(reference cycles)问题85
10.1.5 使用Xcode检测循环引用88
10.2 使用ARC90
10.2.1 Automatic Reference Count90
10.2.2 Core Foundation对象的内存管理92
第11章 掌握GCD95
11.1 GCD简介95
11.2 使用GCD97
11.2.1 block的定义97
11.2.2 系统提供的dispatch方法98
11.2.3 修改block之外的变量99
11.2.4 后台运行99
11.2.5 总结100
第12章 使用UIWindow101
12.1 UIWindow简介101
12.2 为UIWindow增加UIView102
12.3 系统对UIWindow的使用102
12.3.1 WindowLevel104
12.3.2 手工创建UIWindow105
12.3.3 不要滥用UIWindow108
12.3.4 参考资料109
第13章 动态下载系统提供的多种中文字体111
13.1 功能简介111
13.1.1 前言111
13.1.2 功能介绍112
13.1.3 字体列表112
13.2 使用教程113
13.2.1 相关API介绍113
13.2.2 总结115
第14章 使用应用内支付117
14.1 后台设置117
14.2 iOS端开发119
14.3 服务端开发121
14.4 注意事项122
第15章 基于UIWebView的混合编程123
15.1 混合编程简介123
15.2 使用模板引擎渲染HTML界面124
15.3 Objective-C语言和JavaScript语言相互调用126
15.4 如何传递参数129
15.5 同步和异步129
15.6 注意事项130
15.6.1 线程阻塞问题130
15.6.2 主线程的问题130
15.6.3 键盘控制130
15.6.4 CommonJS规范130
15.7 使用Safari进行调试131
第16章 安全性问题135
16.1 前言135
16.2 网络安全135
16.2.1 安全地传输用户密码135
16.2.2 防止通讯协议被轻易破解137
16.2.3 验证应用内支付的凭证138
16.3 本地文件和数据安全138
16.3.1 程序文件的安全138
16.3.2 本地数据安全140
16.4 源代码安全140
16.5 总结142
第17章 基于CoreText的排版引擎143
17.1 CoreText简介143
17.2 基于CoreText的基础排版引擎145
第18章 实战技巧181
18.1 App Store与审核181
18.1.1 撤销正在审核的应用181
18.1.2 申请加急审核181
18.1.3 应用在市场的名字182
18.1.4 测试设备数的限制182
18.1.5 如何将应用下架183
18.1.6 如何举报别的应用侵权183
18.1.7 iTunes Connect后台操作出错184
18.1.8 Metadata Reject184
18.2 开发技巧184
18.2.1 UILabel内容模糊184
18.2.2 收起键盘184
18.2.3 NSJSONSerialization比NSKeyedArchiver更好185
18.2.4 设置应用内的系统控件语言185
18.2.5 为什么viewDidUnload被废弃188
18.2.6 多人协作慎用Storyboard189
18.2.7 避免滥用block190
18.2.8 合并工程文件的冲突192
18.2.9 忽略编译警告193
18.3 Xcode使用技巧193
18.3.1 Xcode快捷键193
18.3.2 查找技巧195
18.3.3 JavaScript文件设置调整195
18.3.4 清除DerivedData196
18.3.5 target信息异常197
18.3.6 下载Xcode197
18.4 调试技巧197
18.4.1 模拟器快捷键197
18.4.2 覆盖安装注意事项197
18.4.3 给模拟器相册增加图片198
18.4.4 获得模拟器中的程序数据198
18.4.5 安装旧版本的模拟器199
18.4.6 模拟慢速网络199
18.4.7 异常断点与符号断点199
18.5 ipa文件格式199
18.5.1 查看ipa的内容199
18.5.2 查看ipa中的图片200
18.6 为工程增加Daily Build201
18.6.1 前言201
18.6.2 步骤201
18.6.3 遇到的问题206
18.6.4 总结206
18.7 使用脚本提高开发效率206
18.7.1 删除未使用的图片资源206
18.7.2 用脚本自动生成小尺寸的图片207
18.7.3 检查图片208
18.8 管理代码片段209
18.8.1 代码片段介绍209
18.8.2 定义自己的代码片段210
18.8.3 使用Git管理代码片段211
18.8.4 其他代码片段管理工具211
第三部分:iOS开发底层原理215
第19章 Objective-C对象模型215
19.1 简介215
19.2 isa指针215
19.3 类的成员变量217
19.4 对象模型的应用220
19.4.1 动态创建对象220
19.4.2 系统相关API及应用222
19.4.3 参考文献226
第20章 Tagged Pointer对象227
20.1 原有系统的问题227
20.2 Tagged Pointer介绍228
20.2.1 Tagged Pointer228
20.2.2 特点230
20.3 注意事项和实现细节231
20.3.1 isa指针231
20.3.2 64位下的isa指针优化231
20.3.3 isa的 bit位含义232
20.3.4 总结233
20.3.5 参考文献233
第21章 block对象模型235
21.1 block的内部数据结构定义235
21.2 用clang分析block实现237
21.2.1 NSConcreteMallocBlock类型的block的实现242
21.2.2 变量的复制243
21.3 注意事项243
21.3.1 避免循环引用243
21.3.2 ARC对block类型的影响244