《iOS 6开发进阶与实战畅销书《iOS 5基础教程》升级新版 《精通iOS开发 第5版》提高篇》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:(美)DaveMarkAlexHorovitzKevinKimJeffLaMarche著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2013
  • ISBN:7115326034
  • 页数:419 页
图书介绍:《iOS6开发进阶与实战》从CoreData、iCloud、GameKit、MapKit、消息、媒体以及安全性等诸多方面,对iOS平台开发中的进阶内容进行了详细的讲解。《iOS6开发进阶与实战》共16章,其中第2章至第7章详细而深入地讨论了有关CoreData的内容;第8至第13章分别讲解了云服务技术iCloud、GameKit中的蓝牙连接、LBS服务MapKit、媒体库与多媒体播放、消息传送与社交媒体,以及应用程序安全性;第14、15章介绍了并发响应、多线程与高级调试技术;最后,第16章为读者提供了一些有用的外部资源。《iOS6开发进阶与实战》所涉及的内容是开发具有一定深度和价值的iOS应用程序所必须了解和掌握的,所以,本书不仅适合对iOS开发有一定基础的读者,更是即将开发产品级应用的开发人员所必须阅读的书籍。另外,《iOS6开发进阶与实战》也可供领域内产品经理、项目经理等相关职位人士参考

第1章 踏上新征程 1

1.1本书讲什么 1

1.2你需要具备的基础 2

1.3启程前的准备 2

1.4本书主要内容 4

第2章Core Data剖析 6

2.1 Core Data简史 6

2.2创建Core Data应用程序 7

2.3 Core Data概念和术语 11

2.4数据模型 11

2.5 Managed Object 21

2.6键—值(Key-Value)编程 21

2.7 Managed Object上下文 22

2.8小结 33

第3章 完美的开端:添加、显示和删除数据 34

3.1建立Xcode项目 35

3.1.1添加场景 39

3.1.2场景和导引线 40

3.1.3 Storyboard文档大纲 40

3.2应用程序架构 41

3.3设计视图控制器界面 42

3.4创建HeroListController 45

3.4.1创建Connection和Outlets 47

3.4.2导航栏按钮 49

3.4.3标签栏User Defaults 51

3.5设计数据模型 53

3.5.1添加一个实体 53

3.5.2编辑新实体 53

3.5.3为Hero实体添加属性 55

3.6声明Fetched Results Controller 59

3.7实现Fetched Results Controller 60

3.8 Fetched Results Controller的Delegate方法 61

3.9一切就绪 63

3.9.1错误处理 63

3.9.2实现Edit和Add 63

3.9.3为表格视图数据源和Delegate编写代码 64

3.9.4表格视图排序 65

3.9.5运行时载入Fetch Request 66

3.10跑起来吧 66

3.11完成,但还要继续 67

第4章 隐藏在详情视图中的“怪兽” 68

4.1视图实现方案选择 68

4.2创建详情视图控制器 70

4.2.1接通导引线 72

4.2.2 HeroDetailController 73

4.3详情视图中的挑战 74

4.4使用Property列表控制表格结构 75

4.5使用Property列表搭建表格结构模型 76

4.6通过Property列表定义表格视图 77

4.7解析Property列表 80

4.8显示详情 82

4.9编辑详情 84

4.10详情视图的编辑模式 84

4.11创建自定义UITableViewCell子类 86

4.12保存修改 89

4.13专门的输入视图 90

4.13.1 DatePicker SuperDBEditCell子类 90

4.13.2使用DatePicker SuperDBEditCell子类 92

4.13.3实现一个选择器 94

4.14“怪兽”的终结 97

第5章 为变化做准备:迁移和版本控制 98

5.1关于数据模型 99

5.1.1数据模型会被编译 99

5.1.2数据模型可以拥有多个版本 100

5.1.3创建新版数据模型 101

5.1.4当前数据模型版本 102

5.1.5数据模型版本标识符 103

5.2迁移 103

5.2.1轻量VS标准 103

5.2.2标准迁移 104

5.3为轻量迁移设置应用 104

5.4让我们迁移吧 105

第6章 自定义管理对象 106

6.1更新数据模型 108

6.1.1添加Age属性 109

6.1.2添加“最喜爱颜色”属性 109

6.1.3为name属性指定最小长度 110

6.2创建Hero类 111

6.2.1修改Hero的Header 113

6.2.2设置默认值 113

6.3校验 114

6.3.1单属性校验 115

6.3.2 nil vs.NULL 116

6.3.3多属性校验 117

6.4虚拟Accessor 118

6.5添加校验反馈 118

6.6更新详情视图 120

6.7重构SuperDBEditCell 122

6.7.1 Xcode重构选项 122

6.7.2搬移代码 124

6.7.3可编辑Property 126

6.8创建Color表格视图单元格 127

6.8.1自定义颜色编辑器 127

6.8.2自定义Color表格视图单元格 129

6.9清除选择器 132

6.10还有一件事 135

6.11前路更多彩 138

第7章 关系、属性获取和表达式 139

7.1扩展你的应用程序:“超能力”和“英雄榜” 139

7.2关系 141

7.2.1对一关系 142

7.2.2对多关系 142

7.2.3逆关系 144

7.2.4 Fetched Properties 145

7.2.5在数据模型编辑器中创建关系和Fetched Properties 145

7.2.6删除规则 146

7.3表达式和融合 146

7.4添加“超能力”实体 147

7.5创建Power关系 148

7.6创建逆关系 149

7.7创建olderHeros Fetched Property 149

7.8创建youngerHeros Fetched Property 151

7.9创建sameSexHeroes Fetched Property 151

7.10创建opposite SexHeroes Fetched Property 151

7.11向Hero类添加关系和Fetched Properties 152

7.12修改详情视图 152

7.12.1重新思考配置 154

7.12.2封装和信息隐藏 157

7.12.3数据驱动配置 159

7.12.4添加“超能力” 160

7.13重构详情视图控制器 165

7.13.1重命名Configuration类 165

7.13.2重构详情控制器 167

7.13.3重构Hero实例变量 167

7.13.4再抽象一点 167

7.13.5新的HeroDetail Controller 169

7.14“超能力”视图控制器 171

7.15Fetch Properties 174

7.16和Core说再见 177

第8章 在云端 178

8.1使用iCloud进行数据存储 178

8.2 iCloud基础 178

8.3 iCloud Backup 179

8.4在应用程序中启用iCloud 180

8.5键—值数据存储 180

8.6文档存储 181

8.6.1 UIDocument 181

8.6.2支持iCloud的UIDocument 185

8.6.3 NSMetadataQuery 185

8.7支持iCloud的Core Data 187

8.8升级SuperDB 189

8.8.1 Entitlements 189

8.8.2创建启用iCloud的Provisioning Profile 190

8.8.3修改Persistent Store 198

8.8.4修改Managed Object上下文 200

8.8.5收到DataChanged通知时更新UI 201

8.8.6测试数据存储 202

8.8.7“脚踏实地” 202

第9章 使用Game Kit进行蓝牙点对点通信 203

9.1 Game Center 203

9.2点对点连接 204

9.3 In Game Voice 205

9.4本章的应用程序 205

9.5网络通信模型 208

9.5.1客户端—服务器模型 208

9.5.2点对点模型 209

9.5.3客户端—服务器与点对点混合 209

9.6 Game Kit中的Session 210

9.6.1创建Session 210

9.6.2查找并连接到其他Session 211

9.6.3监听其他的Session 211

9.6.4向连接点发送数据 212

9.6.5信息打包发送 213

9.6.6从连接点接收数据 213

9.6.7关闭连接 214

9.7 Peer Picker 214

9.7.1创建Peer Picker 214

9.7.2处理连接 215

9.7.3创建Session 215

9.8创建项目 216

9.8.1关闭待机计时器 216

9.8.2导入Game Kit框架 216

9.8.3设计界面 217

9.8.4定义应用程序常量 217

9.8.5设计棋盘 219

9.8.6创建数据包对象 221

9.8.7搭建视图控制器头 223

9.9内测 234

9.10游戏开始 235

第10章Map Kit 236

10.1本章的应用程序 236

10.2概览和术语 237

10.3地图视图 238

10.3.1地图类型 238

10.3.2用户所在位置 239

10.3.3坐标区域 239

10.3.4设定显示区域 241

10.3.5地图视图Deleate 241

10.4标注 243

10.4.1标注对象 243

10.4.2标注视图 244

10.4.3添加和移除标注 244

10.4.4选中标注 244

10.4.5提供带有标注视图的地图视图 245

10.5地理编码和反向地理编码 246

10.6搭建MapMe应用程序 247

10.6.1链接Map Kit和Core Location框架 247

10.6.2构建界面 248

10.6.3实现视图控制器接口 249

10.6.4实现标注对象类 249

10.6.5实现MapMe的ViewController 251

10.7升级啦,年轻人 256

第11章 消息:邮件、短信和社交媒体 257

11.1本章的应用程序 257

11.2 MessageUI框架 259

11.2.1创建邮件编写视图控制器 260

11.2.2填写标题行 260

11.2.3填写收件人 260

11.2.4设置邮件正文 261

11.2.5添加附件 261

11.2.6显示邮件编写视图 261

11.2.7 邮件编写视图控制器的Delegate方法 261

11.2.8消息编写视图控制器 262

11.3 Social框架 263

11.3.1 SLComposeViewController 263

11.3.2 SLRequest 264

11.4活动视图控制器 265

11.5构建MessageImage应用程序 266

11.5.1构建用户界面 266

11.5.2拍照 266

11.5.3调用照相机 267

11.5.4选择消息发送器 267

11.6寄往:下一章 268

第12章 媒体库访问和播放 269

12.1 MediaPlayer框架 269

12.1.1媒体项 270

12.1.2媒体项集合 274

12.1.3媒体查询和媒体属性Predicate 275

12.1.4媒体选择控制器 277

12.1.5音乐播放控制器 279

12.2简单的音乐播放器 283

12.2.1构建SimplePlayer应用程序 283

12.2.2构造用户界面 284

12.2.3声明Outlet和Action 286

12.3 MPMoviePlayerController 291

12.4 MPMediaPlayer 292

12.5 AVFoundation 302

12.6 AVMediaPlayer 303

12.7小心!前方有洪水 327

第13章 加把锁:iOS安全 328

13.1安全性考量 328

13.2安全性技术 329

13.2.1加密 329

13.2.2散列 329

13.2.3证书和签名 330

13.2.4身份 330

13.3 iOS安全性 330

13.3.1随机Keychain 331

13.3.2证书、密钥和受信服务 335

13.4 Keychain Viewer 336

13.4.1创建Certificate Authority 336

13.4.2创建Keychain应用 340

13.5安全不打烊 361

第14章 保持界面响应 362

14.1探索并发问题 363

14.2创建Stalled应用程序 364

14.2.1设计界面 364

14.2.2实现Stalled视图控制器 364

14.3 Timer 367

14.3.1创建Timer 367

14.3.2停止Timer 368

14.3.3 Timer的局限性 368

14.4使用Timer修改Stalled应用程序 368

14.4.1创建Batch对象 368

14.4.2修改nib 370

14.4.3修改视图控制器头文件 370

14.4.4修改视图控制器的实现文件 371

14.5操作队列和并发 373

14.5.1线程 374

14.5.2操作 379

14.5.3操作队列 381

14.6使用操作队列优化Stalled应用程序 382

14.6.1创建SquareRootApplication 383

14.6.2自定义ProgressCell 386

14.6.3调整用户界面 386

14.6.4修改ViewController.h 387

14.6.5修改ViewController.m 387

14.7排队站好 392

第15章 单元测试、调试和相关工具 393

15.1单元测试 393

15.2调试 401

15.2.1断点 402

15.2.2 Debug Navigator 404

15.2.3 Debug Area 405

15.2.4尝试Debug Control 406

15.2.5 Breakpoint Navigator和Symbolic断点 409

15.2.6条件断点 409

15.2.7断点行为 411

15.2.8静态分析 413

15.2.9有关调试的补充 413

15.3使用Instruments进行性能分析 414

15.4胜利的终点线 416

第16章 路在脚下 417

16.1逃离困境 417

16.2苹果提供的文档 418

16.3邮件列表 418

16.4论坛 418

16.5网站 418

16.6博客 419

16.7如果一切都失败了 419

16.8再见 419