Swift语言快速入门

出版日期:2014-10
ISBN:9787121243288
作者:极客学院
页数:428页

内容概要

陈少佳,现任极客学院布道师,负责教师团队建设、线上课程建设等工作。
2008年从业至今,曾任外企技术总监、线下培训机构学术总监、副校长,培养过至少1000名月薪过万的Android、iOS开发工程师。
李艺(网名:蜗牛君),苏州人士,清华计算机硕士,极客学院Swift专家,木子宁工作室掌门。Adobe中国首批社区帮助管理员与版主,著名iOS独立游戏开发者,爱好书法、箫、吉他等,喜好郊游,偶尔会做义工。
博客地址:www.muzining.com

书籍目录

第1章 马斯堡游记
1
1.1 买票
1
1.2 导游
13
1.3 飞碟
22
1.4 斗法
23
1.5 题诗
27
第2章 Swift初见
28
2.1 Hello World
28
2.2 简单值
29
2.3 控制流
30
2.4 函数和闭包
33
2.5 对象和类
35
2.6 枚举和结构
39
2.7 协议和扩展
42
2.8 泛型
43
第3章 语法入门
45
3.1 基础
45
3.1.1 常量和变量
45
3.1.2 注释
48
3.1.3 分号
49
3.1.4 整数
49
3.1.5 浮点数
50
3.1.6 类型安全和类型推断
50
3.1.7 数值字面量
51
3.1.8 数值类型转换
52
3.1.9 类型别名
53
3.1.10 布尔值
54
3.1.11 元组
55
3.1.12 可选
56
3.1.13 断言
60
3.2 基本运算符
61
3.2.1 术语
61
3.2.2 赋值运算符
62
3.2.3 算术运算符
62
3.2.4 求余运算符
63
3.2.5 浮点数求余运算符
64
3.2.6 自增和自减运算符
64
3.2.7 单目负号运算符
65
3.2.8 单目正号运算符
65
3.2.9 复合赋值运算符
65
3.2.10 比较运算符
66
3.2.11 三目条件运算符
66
3.2.12 nil合并运算符
67
3.2.13 区间运算符
68
3.2.14 逻辑运算符
69
3.3 字符串与字符
71
3.3.1 字符串字面量
72
3.3.2 初始化空字符串
73
3.3.3 字符串可变性
73
3.3.4 字符串是值类型
73
3.3.5 使用字符
74
3.3.6 连接字符串和字符
74
3.3.7 字符串插值
75
3.3.8 Unicode
75
3.3.9 计算字符数量
77
3.3.10 比较字符串
78
3.4 集合类型
79
3.4.1 集合的可变性
80
3.4.2 数组
80
3.4.3 字典
84
3.5 流程流
89
3.5.1 for循环
89
3.5.2 while循环
93
3.5.3 条件语句
96
3.5.4 控制转移语句
103
3.6 函数
108
3.6.1 函数的定义与调用
108
3.6.2 函数参数和返回值
110
3.6.3 函数参数名称
113
3.6.4 函数类型
119
3.6.5 嵌套函数
122
3.7 闭包
122
3.7.1 闭包表达式
123
3.7.2 尾随闭包
126
3.7.3 值捕获
128
3.7.4 闭包是引用类型
130
3.8 枚举
130
3.8.1 枚举语法
131
3.8.2 使用switch 语句匹配枚举值
132
3.8.3 关联值
133
3.8.4 原始值
135
3.9 类和结构体
136
3.9.1 类和结构体的对比
137
3.9.2 结构体和枚举是值类型
139
3.9.3 类是引用类型
141
3.9.4 类和结构体的选择
142
3.9.5 字符串、数组及字典的赋值和复制行为
143
第4章 初级语法
144
4.1 属性
144
4.1.1 存储属性
144
4.1.2 计算属性
147
4.1.3 属性监察器
149
4.1.4 全局变量和本地变量
151
4.1.5 类型属性
151
4.2 方法
155
4.2.1 实例方法
155
4.2.2 类型方法
160
4.3 下标
163
4.3.1 下标语法
163
4.3.2 下标用法
164
4.3.3 下标选项
164
4.4 继承
166
4.4.1 定义一个基类
167
4.4.2 子类生成
168
4.4.3 重写
169
4.4.4 防止重写
173
4.5 构造
173
4.5.1 存储属性的初始赋值
173
4.5.2 自定义构造
174
4.5.3 默认构造器
178
4.5.4 值类型的构造器代理
179
4.5.5 类的继承和构造
180
4.5.6 通过闭包或函数来设置属性的默认值
190
4.6 析构
192
4.6.1 析构原理
192
4.6.2 析构实例
192
4.7 自动引用计数
194
4.7.1 ARC的工作原理
195
4.7.2 ARC实践
195
4.7.3 类实例间的强引用环
196
4.7.4 解决类实例间的强引用环
199
4.7.5 闭包产生的强引用环
205
4.7.6 解决闭包产生的强引用环
207
4.8 可选链
210
4.8.1 可选链替代可选强制解析
210
4.8.2 为可选链定义模型类
211
4.8.3 通过可选链获取属性
213
4.8.4 通过可选链调用方法
214
4.8.5 使用可选链获取下标
214
4.8.6 连接多层链
215
4.8.7 可选链中返回可选类型的方法
216
4.9 类型转换
217
4.9.1 定义一个类层次作为例子
217
4.9.2 类型检查
218
4.9.3 向下转换
219
4.9.4 Any和AnyObject的转换
220
4.10 类型嵌套
222
4.10.1 类型嵌套实践
223
4.10.2 引用嵌套类型
224
第5章 高级语法
225
5.1 扩展
225
5.1.1 扩展语法
225
5.1.2 计算属性
226
5.1.3 构造器
227
5.1.4 方法
228
5.1.5 可变实例方法
229
5.1.6 下标
229
5.1.7 嵌套类型
230
5.2 协议
231
5.2.1 协议语法
231
5.2.2 属性要求
232
5.2.3 方法要求
233
5.2.4 可变方法要求
234
5.2.5 协议作为类型
235
5.2.6 集合中的协议类型
240
5.2.7 协议的继承
241
5.2.8 协议合成
242
5.2.9 检查协议的一致性
243
5.2.10 可选协议要求
245
5.3 泛型
247
5.3.1 泛型解决的问题
247
5.3.2 泛型函数
248
5.3.3 类型参数
249
5.3.4 命名类型参数
249
5.3.5 泛型类型
250
5.3.6 扩展泛型类型
252
5.3.7 类型约束
253
5.3.8 关联类型
256
5.3.9 where子句
258
5.4 访问控制
260
5.4.1 模块和源文件
261
5.4.2 访问级别
261
5.4.3 访问控制语法
262
5.4.4 自定义类型
263
5.4.5 子类
265
5.4.6 常量、变量、属性和下标
266
5.4.7 协议
268
5.4.8 扩展
269
5.5 高级运算符
269
5.5.1 位运算符
270
5.5.2 溢出运算符
274
5.5.3 优先级和结合性
276
5.5.4 运算符函数
277
5.5.5 前置和后置运算符
278
5.5.6 组合赋值运算符
279
5.5.7 比较运算符
280
5.5.8 自定义运算符
280
5.5.9 自定义中置运算符的优先级和结合性
281
第6章 词法参考
282
6.1 关于词法参考
282
6.2 词法结构
283
6.2.1 空白与注释
283
6.2.2 标识符
283
6.2.3 关键字和标点符号
285
6.2.4 字面量
286
6.2.5 运算符
290
6.3 类型
292
6.3.1 类型标注
292
6.3.2 类型标识符
293
6.3.3 元组类型
293
6.3.4 函数类型
294
6.3.5 数组类型
295
6.3.6 字典类型
296
6.3.7 可选类型
296
6.3.8 隐式解析可选类型
297
6.3.9 合成协议
298
6.3.10 元类型
298
6.3.11 类型继承语法
299
6.3.12 类型推断
299
6.4 表达式
300
6.4.1 前缀表达式
300
6.4.2 二元表达式
301
6.4.3 赋值表达式
303
6.4.4 三元条件运算符
303
6.4.5 类型转换运算符
304
6.4.6 主表达式
305
6.4.7 后缀表达式
310
6.5 语句
314
6.5.1 循环语句
315
6.5.2 分支语句
317
6.5.3 带标签的语句
320
6.5.4 控制传递语句
321
6.6 声明
322
6.6.1 全局代码
323
6.6.2 代码块
323
6.6.3 导入声明
324
6.6.4 常量声明
324
6.6.5 变量声明
325
6.6.6 类和静态变量属性
327
6.6.7 类型别名
328
6.6.8 函数声明
328
6.6.9 枚举声明
332
6.6.10 结构体声明
334
6.6.11 类声明
335
6.6.12 协议声明
336
6.6.13 协议构造器声明
338
6.6.14 协议下标声明
338
6.6.15 协议相关类型声明
338
6.6.16 构造器声明
339
6.6.17 析构器声明
340
6.6.18 扩展声明
340
6.6.19 下标声明
341
6.6.20 运算符声明
342
6.6.21 特征声明修饰符
343
6.6.22 访问控制级别
344
6.7 特征
345
6.7.1 声明特征
345
6.7.2 Interface Builder使用的声明特征
348
6.7.3 类型特征
348
6.8 模式
349
6.8.1 通配符模式
349
6.8.2 标识符模式
350
6.8.3 值绑定模式
350
6.8.4 元组模式
350
6.8.5 枚举用例模式
351
6.8.6 类型转换模式
352
6.8.7 表达式模式
352
6.9 泛型形参和实参
353
6.9.1 泛型形参子句
353
6.9.2 where 子句
354
6.9.3 泛型参数子句
355
6.10 语法总结
356
6.10.1 语句(Statements)
356
6.10.2 泛型形参与实参(Generic Parameter and Arguments)
358
6.10.3 声明(Declarations)
358
6.10.4 模式(Patterns)
364
6.10.5 特征(Attributes)
365
6.10.6 表达式(Expression)
365
6.10.7 词法结构(Lexical Structure)
368
6.10.8 类型(Types)
372
第7章 使用Cocoa框架与ObjC
374
7.1 基本设置
374
7.1.1 建立你的Swift环境
374
7.1.2 理解Swift的导入过程
375
7.2 与ObjC API交互
376
7.2.1 初始化
376
7.2.2 访问属性
377
7.2.3 使用方法
377
7.2.4 id兼容性
378
7.2.5 使用nil
379
7.2.6 扩展
380
7.2.7 闭包
381
7.2.8 对象比较
381
7.2.9 Swift类型兼容性
381
7.2.10 Objective-C选择器
382
7.3 以ObjC的行为写Swift
383
7.3.1 继承Objective-C的类
383
7.3.2 适配协议
384
7.3.3 编写构造器和析构器
384
7.3.4 集成Interface Builder
384
7.3.5 指明属性特性
386
7.3.6 实现核心数据管理对象的子类
386
7.4 使用Cocoa数据类型
386
7.4.1 字符串
387
7.4.2 数字
387
7.4.3 集合类
388
7.4.4 Foundation数据类型
390
7.4.5 Foundation函数
390
7.4.6 Core Foundation
390
7.5 采用Cocoa设计模式
392
7.5.1 委托
392
7.5.2 错误报告
392
7.5.3 键值观察
393
7.5.4 Target-Action
394
7.5.5 内省
394
7.6 与C API交互
395
7.6.1 基本类型
395
7.6.2 枚举
396
7.6.3 指针
397
7.6.4 全局常量
401
7.6.5 预处理指令
401
7.7 与ObjC混编
402
7.7.1 混编概述
402
7.7.2 在同一个app target中进行代码导入
403
7.7.3 在同一个framework target中导入代码
404
7.7.4 导入外部框架
405
7.7.5 在Objective-C中使用Swift代码
406
7.7.6 product模式命名
407
7.7.7 故障排除和提醒
407
7.8 迁移ObjC代码至Swift
408
7.8.1 为你的Objective-C代码迁移做好准备
408
7.8.2 迁移过程
408
7.8.3 技巧和提示
409

作者简介

《Swift语言快速入门》以苹果官方Swift英文文档为基础,以其大纲为主线,从易到难全面阐述了Swift语言的语言基础、基本运算、字符串操作、集合类型、流程控制、函数与闭包、面向对象、高级运算符操作及语法参考等方方面面。此外,《Swift语言快速入门》内容及API已与苹果官方英文文档同步更新,减少了初学者学习旧版语言文档却不能正常编译代码的困惑。
《Swift语言快速入门》涵盖面广,内容全面,不仅适合于Swift语言的初学者,有一定iOS编程经验的开发者可以把它当作案头工具书。


 Swift语言快速入门下载 更多精彩书评



发布书评

 
 


精彩书评 (总计1条)

  •     与苹果的官方文档重合度比较高,比网上翻译中文文档阅读度要流畅些 ,另外两个编著者的作文风格差异蛮大的。实际的内容主要还是围绕语法说明来展开,与实际使用中的联系还是比较少,采用苹果的官方实例居多。对于语法上的设计原理、局限性没有展开。主要还是Swift太新,实际使用还是太少,或者说编著者碰到的问题还是太少。中文计算机技术书作者还要加油

精彩短评 (总计1条)

  •     三天学会Swift~~
 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024