内容简介
《Swift与Cocoa框架开发》系统讲解了在Mac OS X和iOS 8平台上,使用苹果公司的Swift语言开发Mac、iPhone和iPad应用的基本概念和编程技巧。主要围绕使用Swift语言进行Cocoa框架开发,突出OS X和iOS开发的差异,教会读者利用高级Cocoa和Cocoa Touch特性开发真实的应用。具体说来,前面几章介绍了一般性主题,比如设置开发环境以及Swift语言的语法和功能,后面各章介绍了Cocoa和Cocoa Touch的具体功能。此外,几乎每一章都包含了一些可以遵照执行的实践练习。
本书适合各层次Mac OS X和iOS 8应用开发人员阅读。
作者简介
Jonathon Manning是澳大利亚独立游戏开发工作室Secret Lab的联合创始人,移动应用工程师、游戏设计师、程序员和计算学研究人员,从事过各种项目,曾为孩子们开发过iPad游戏,也开发过即时通信客户端。Twitter账号为@desplesda。
Paris Buttfield-Addison也是Secret Lab的联合创始人,移动应用工程师、游戏设计师和计算学研究人员,致力于使技术变得简单又有趣。Paris拥有计算学博士学位。Twitter账号为@parisba。
Tim Nugent是移动应用开发人员、游戏设计师、博士生、作家。大部分时间都用来设计和开发仅供自己娱乐的小应用和游戏。Twitter账号为@The_McJones。
内页插图
目录
目录
前言 XIII
第1 章 Cocoa 开发工具 1
1.1 Mac 和iOS 开发者计划 1
1.1.1 注册开发者计划 2
1.1.2 下载Xcode 3
1.2 用Xcode 创建自己的第一个项目 4
1.3 开发一个简单的Swift 应用程序 11
1.3.1 设计界面 11
1.3.2 连接代码 13
1.4 使用iOS 模拟器 14
1.5 用TestFlight 测试iOS App 16
第2 章 用Swift 设计程序 17
2.1 Swift 程序设计语言 17
2.2 playground 19
2.3 变量和常量 20
2.4 类型 21
2.4.1 元组 23
2.4.2 数组 23
2.4.3 字典 25
2.5 控制流 25
2.6 函数与闭包 29
2.6.1 将函数用作变量 32
2.6.2 闭包 34
2.7 对象 35
2.7.1 继承 36
2.7.2 初始化与反初始化 37
2.7.3 属性 38
2.7.4 协议 40
2.7.5 扩展 41
2.7.6 访问控制 43
2.7.7 运算符 44
2.7.8 泛型 45
2.8 与Objective-C 的互操作 46
2.9 在同一项目中使用Objective-C 和Swift 46
2.9.1 在Objective-C 中使用Swift 对象 46
2.9.2 在Swift 中使用Objective-C 47
2.10 模块 48
2.11 内存管理 48
2.12 字符串 49
2.12.1 比较字符串 50
2.12.2 查找字符串 50
2.13 数据 50
2.13.1 从文件和URL 加载数据 51
2.13.2 序列化与反序列化 51
2.14 Cocoa 中的设计模式 52
2.14.1 模型- 视图- 控制器 52
2.14.2 委托 53
第3 章 OS X 和iOS 上的应用程序 56
3.1 什么是应用程序 56
3.1.1 应用程序、框架、实用工具及其他 57
3.1.2 App 的构成 58
3.1.3 用NSBundle 在应用程序中查找资源 60
3.2 应用程序生命周期 61
3.2.1 OS X 应用程序 61
3.2.2 iOS 应用程序 62
3.3 应用程序沙盒 67
3.4 用NSNotification 发送通知 70
第4 章 图形用户界面 72
4.1 OS X 和iOS 中的界面 72
4.2 MVC 和应用程序设计 73
4.3 nib 文件和故事板 73
4.3.1 nib 文件的结构 74
4.3.2 故事板 77
4.3.3 输出口和操作 77
4.3.4 如何加载nib 文件和故事板 78
4.4 构建界面 79
4.5 构建具有nib 和约束的App 81
4.6 iOS 上的界面 84
4.7 UI Dynamics 87
4.7.1 UI 和重力 87
4.7.2 吸附UI 88
4.8 Core Animation 89
4.8.1 层 90
4.8.2 动画 91
第5 章 闭包和操作队列 94
5.1 Cocoa 中的闭包 95
5.2 操作队列中的并发 96
5.3 操作队列和NSOperation 96
5.4 在操作队列中执行工作 97
5.5 融会贯通 98
第6 章 在视图上绘制图形 103
6.1 如何绘制 103
6.2 像素网格 105
6.2.1 Retina 显示屏 106
6.2.2 像素与屏幕点 107
6.3 在视图中绘制 107
6.3.1 框架矩形 107
6.3.2 边界矩形 108
6.4 创建自定义视图 109
6.4.1 用纯色填充 110
6.4.2 处理路径 111
6.4.3 创建自定义路径 112
6.4.4 多条子路径 114
6.4.5 阴影 115
6.4.6 渐变 119
6.4.7 变换 121
第7 章 SpriteKit 123
7.1 SpriteKit 的体系结构 123
7.2 制作使用SpriteKit 的App 124
7.3 使用SpriteKit 场景 125
7.4 SpriteKit 节点 127
7.5 将精灵放在场景中 128
7.6 对触碰作出响应 129
7.7 使用纹理 130
7.8 纹理贴图集 131
7.9 使用文本 131
7.10 用操作实现内容的动画 133
7.11 使用形状节点 134
7.12 使用图像特效节点 135
7.13 向SpirteKit 对象增加物理属性 137
7.14 向SpriteKit 对象添加接合 138
7.15 SpriteKit 场景照明 138
7.16 约束 139
7.17 在SpriteKit 中使用阴影 140
7.18 使用SpriteKit 编辑器 142
第8 章 SceneKit 143
8.1 SceneKit 结构 144
8.2 使用SceneKit 144
8.3 添加SceneKit 视图 145
8.4 添加场景 146
8.5 添加照相机 146
8.6 添加3D 对象 147
8.7 添加光源 149
8.8 为场景中的内容实现动画 150
8.9 创建文本几何体 151
8.10 使用材料 153
8.11 命中检测 157
8.12 约束 158
8.13 从COLLADA 文件中加载数据 160
8.14 向场景中添加物理仿真 162
第9 章 音频与视频 165
9.1 AV Foundation 165
9.2 用AVPlayer 播放视频 166
9.2.1 AVPlayerLayer 167
9.2.2 融会贯通 167
9.2.3 AVKit 170
9.2.4 iOS 上的AVKit 172
9.2.5 用AVAudioPlayer 播放声音 174
9.3 语音合成 175
9.4 使用照片库 176
9.4.1 从相机采集照片和视频 176
9.4.2 开发照片应用程序 178
9.4.3 照片库 181
第10 章 iCloud 和数据存储 182
10.1 偏好设置 182
10.1.1 注册默认偏好设置 183
10.1.2 访问偏好设置 184
10.1.3 设定偏好设置 184
10.2 使用文件系统 184
10.2.1 使用NSFileManager 186
10.2.2 文件存储位置 189
10.3 使用沙盒 189
10.3.1 启用沙盒 190
10.3.2 打开和保存面板 190
10.3.3 安全范围内的书签 191
10.4 iCould 192
10.5 iCloud 存储什么 193
10.6 为iCloud 进行设置 194
10.7 测试iCloud 是否正常工作 194
10.8 存储设置 195
10.8.1 处理外部修改 196
10.8.2 iOS 上的相应内容 197
10.9 iCloud 存储 199
10.9.1 OS X 上的iCloud 存储 200
10.9.2 iOS 上的iCloud 存储 204
10.10 文档选取器 206
10.11 iCloud 的最佳使用 210
第11 章 Cocoa 绑定 211
11.1 将视图绑定到模型 211
11.2 一个简单的绑定App 212
11.3 绑定到控制器 214
11.4 数组和对象控制器 216
11.5 一个更复杂的绑定App 216
第12 章 表格视图和集合视图 223
12.1 数据源和委托 223
12.2 表格视图 224
12.2.1 iOS 上的UITableView 224
12.2.2 OS X 上的NSTableView 231
12.3 集合视图 236
第13 章 基于文档的应用程序 240
13.1 NSDocument 和UIDocument 类 241
13.2 MVC 中的文档对象 241
13.2.1 文档的类型 241
13.2.2 文档的角色 242
13.3 OS X 上基于文档的应用程序 243
13.3.1 自动保存与版本 243
13.3.2 用NSDocument 表示文档 243
13.3.3 保存简单数据 244
13.3.4 保存更复杂的数据 246
13.4 iOS 上基于文档的应用程序 250
第14 章 联网 257
14.1 连接 257
14.1.1 NSURL 258
14.1.2 NSURLRequest 259
14.1.3 NSURLSession 259
14.1.4 NSURLResponse 和NSHTTPURLResponse 260
14.2 开发联网应用程序 261
14.3 Bonjour 服务的发现 262
14.4 Multipeer Connectivity 264
第15 章 与现实世界互动 269
15.1 使用位置 269
15.1.1 位置硬件 270
15.1.2 Core Location 框架 271
15.1.3 使用Core Location 272
15.
前言/序言
Swift与Cocoa框架开发 下载 mobi epub pdf txt 电子书 格式