您好,欢迎来到聚文网。 登录 免费注册
iOS开发进阶

iOS开发进阶

  • 字数: 328000.0
  • 装帧: 平装
  • 出版社: 电子工业出版社
  • 作者: 唐巧 著 著
  • 出版日期: 2015-01-01
  • 商品条码: 9787121247453
  • 版次: 1
  • 开本: 16开
  • 页数: 244
  • 出版年份: 2015
定价:¥65 销售价:登录后查看价格  ¥{{selectedSku?.salePrice}} 
库存: {{selectedSku?.stock}} 库存充足
{{item.title}}:
{{its.name}}
精选
编辑推荐
  
内容简介
《iOS开发进阶》分工具、实践、理论三大部分。第一部分介绍iOS开发的常用工具,第二部分介绍iOS开发中的一些常见的实践经验,第三部分介绍iOS开发中涉及的原理。如果把成为iOS开发高手的过程比作武侠小说中的修炼过程的话,工具、实践和理论的学习就分别对应兵器、招式和内功的修炼。《iOS开发进阶》希望通过这三方面的综合讲解,全面提高开发者的技能水平。
作者简介
唐巧,Blogger、InfoQ编辑,资深iOS开发者。曾在网易参与过网易邮箱、网易微博、有道云笔记的开发。目前正参与互联网教育公司猿题库的创业,负责猿题库和小猿搜题的iOS版本开发。
目录
推荐序
第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
I第一部分:iOS开发工具
第2章使用CocoaPods做依赖管理9
2.1CocoaPods简介9
2.2CocoaPods的安装和使用10
2.2.1CocoaPods的安装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.1Charles简介15
3.2Charles的安装和使用16
3.2.1安装Charles16
3.2.2安装SSL证书16
3.2.3将Charles设置成系统代理17
3.2.4Charles主界面介绍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.5Map功能25
3.6Rewrite功能27
3.7Breakpoints功能29
3.8总结30
3.9参考链接30
第4章界面调试工具Reveal31
4.1Reveal简介31
4.2Reveal的使用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.1Flurry简介37
5.2Flurry的基本使用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.1Crashlytics简介47
6.2Crashlytics的使用49
6.3实现原理和使用体会52
第7章AppStore统计工具AppAnnie55
7.1AppAnnie简介55
7.2AppAnnie的使用56
7.3AppAnnie账号的注册及配置59
7.4和其他工具的对比60
7.4.1官方的命令行工具60
7.4.2其他类似服务61
7.4.3功能对比61
第8章Xcode插件63
8.1Xcode插件管理工具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.1KSImageNamed66
8.3.2XVim67
8.3.3FuzzyAutocompletePlugin67
8.3.4XToDo67
8.3.5BBUDebuggerTuckAway68
8.3.6SCXcodeSwitchExpander68
8.3.7deriveddata—exterminator68
8.3.8VVDocumenter69
8.3.9ClangFormat69
8.3.10ColorSense69
8.3.11XcodeBoost70
第9章其他工具介绍71
9.1取色工具:数码测色计(DigitalColorMeter)71
9.1.1前言71
9.1.2使用介绍71
9.1.3其他类似工具:xScope72
9.2其他图形工具73
9.2.1ImageOptim73
9.2.2马克鳗74
9.2.3Dash74
9.2.4蒲公英75
9.3命令行工具75
9.3.1nomad75
9.3.2xctool76
9.3.3appledoc76
第二部分:iOS开发实践
第10章理解内存管理81
10.1引用计数81
10.1.1什么是引用计数,原理是什么81
10.1.2我们为什么需要引用计数83
10.1.3不要向已经释放的对象发送消息85
10.1.4循环引用(referencecycles)问题85
10.1.5使用Xcode检测循环引用88
10.2使用ARC90
10.2.1AutomaticReferenceCount90
10.2.2CoreFoundation对象的内存管理92
第11章掌握GCD95
11.1GCD简介95
11.2使用GCD97
11.2.1block的定义97
11.2.2系统提供的dispatch方法98
11.2.3修改block之外的变量99
11.2.4后台运行99
11.2.5总结100
第12章使用UIWindow101
12.1UIWindow简介101
12.2为UIWindow增加UIView102
12.3系统对UIWindow的使用102
12.3.1WindowLevel104
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.2iOS端开发119
14.3服务端开发121
14.4注意事项122
第15章基于UIWebView的混合编程123
15.1混合编程简介123
15.2使用模板引擎渲染HTML界面124
15.3Objective—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.4CommonJS规范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.1CoreText简介143
17.2基于CoreText的基础排版引擎145
第18章实战技巧181
18.1AppStore与审核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.7iTunesConnect后台操作出错184
18.1.8MetadataReject184
18.2开发技巧184
18.2.1UILabel内容模糊184
18.2.2收起键盘184
18.2.3NSJSONSerialization比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.3Xcode使用技巧193
18.3.1Xcode快捷键193
18.3.2查找技巧195
18.3.3JavaScript文件设置调整195
18.3.4清除DerivedData196
18.3.5target信息异常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.5ipa文件格式199
18.5.1查看ipa的内容199
18.5.2查看ipa中的图片200
18.6为工程增加DailyBuild201
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开发底层原理
第19章Objective—C对象模型215
19.1简介215
19.2isa指针215
19.3类的成员变量217
19.4对象模型的应用220
19.4.1动态创建对象220
19.4.2系统相关API及应用222
19.4.3参考文献226
第20章TaggedPointer对象227
20.1原有系统的问题227
20.2TaggedPointer介绍228
20.2.1TaggedPointer228
20.2.2特点230
20.3注意事项和实现细节231
20.3.1isa指针231
20.3.264位下的isa指针优化231
20.3.3isa的bit位含义232
20.3.4总结233
20.3.5参考文献233
第21章block对象模型235
21.1block的内部数据结构定义235
21.2用clang分析block实现237
21.2.1NSConcreteMallocBlock类型的block的实现242
21.2.2变量的复制243
21.3注意事项243
21.3.1避免循环引用243
21.3.2ARC对block类型的影响244
21.3.3参考文献

蜀ICP备2024047804号

Copyright 版权所有 © jvwen.com 聚文网