| 作者 |
| 张云波 |
| 丛书名 |
| 移动开发系列 |
| 出版社 |
| 电子工业出版社 |
| ISBN |
| 9787121346101 |
| 简要 |
| 简介 |
| 内容简介书籍通信书籍 本书从Swift的第四个版本开始,从基础全面的语法,到iOS 11 & 12的iOS 入门级App开发,最后由一个很实用的iOS小游戏开发结尾。适合新手从零开始上手,一步一步地,坚实掌握iOS开发技术的一站式启蒙之书。另外,本书还配套有语法和iOS基础开发的视频,有效提升学习效率和理解维度,增强学习兴趣,同时可以与作者无缝交流,让您快乐学习iOS开发。 |
| 目录 |
| 第1篇 Swift 4基础语法篇 第1章 关于Swift 3 第2章 Swift语法基础 7 2.1 变量和常量 7 2.2 注释 8 2.3 分号 9 2.4 整数 9 2.5 浮点数 10 2.6 类型安全和类型推断 10 2.7 数值型字面量 10 2.8 数值类型转换 11 2.9 布尔类型 13 2.10 元组 13 2.11 可选类型 14 2.12 错误处理 15 2.13 断言 16 第3章 Swift基本运算符 17 3.1 术语 17 3.2 赋值运算符 17 3.3 算术运算符 18 3.4 组合赋值运算符 19 3.5 比较运算符 19 3.6 三元(目)运算符 20 3.7 空合运算符 21 3.8 区间运算符 22 3.9 逻辑运算符 23 第4章 Swift字符串和字符 26 4.1 字符串字面量 26 4.2 初始化空字符串 26 4.3 字符串可变性 27 4.4 字符串都是值类型 27 4.5 使用字符 27 4.6 连接字符串与字符 28 4.7 字符串插入值 28 4.8 UniCode 29 4.9 计算字符数量 31 4.10 访问与修改字符串 31 4.11 比较字符串 33 第5章 Swift集合类型 35 5.1 数组 35 5.2 集 39 5.3 字典 42 第6章 Swift控制流 46 6.1 for循环 46 6.1.1 for-in 47 6.1.2 for条件递增 48 6.2 while循环 48 6.2.1 while 49 6.2.2 repeat while 49 6.3 if语句 50 6.4 guard语句 51 6.5 switch语句 52 6.6 控制转移语句 54 6.6.1 continue语句 54 6.6.2 break语句 55 6.6.3 fallthrough语句 56 6.6.4 return语句 57 第7章 Swift函数 58 7.1 函数的定义和调用 58 7.2 函数的参数和返回值 59 7.2.1 多个输入参数的函数 59 7.2.2 没有参数的函数 59 7.2.3 没有返回值的函数 60 7.2.4 没有返回值的函数调用具有返回值的函数 60 7.2.5 多个返回值的函数 60 7.2.6 元组可选类型返回值的函数 61 7.3 函数的参数名称 62 7.3.1 外部参数名称 62 7.3.2 带默认值参数的函数 62 7.3.3 可变参数的函数 63 7.3.4 常量参数和变量参数 63 7.3.5 输入和输出参数 64 7.4 函数类型 65 7.4.1 使用函数类型 65 7.4.2 使用函数类型作为参数 65 7.4.3 使用函数类型作为返回值 66 7.4.4 使用函数类型作为常量 66 7.5 嵌套函数 67 第8章 Swift闭包 68 8.1 闭包的定义 68 8.2 闭包表达式 69 8.2.1 sorted函数 69 8.2.2 使用闭包表达式 70 8.2.3 根据上下文推断参数 70 8.2.4 单表达式闭包省掉返回关键字 70 8.2.5 参数名称缩写 71 8.2.6 运算符函数 71 8.3 挂尾闭包 71 8.4 闭包的值捕获 72 8.5 闭包是引用类型 73 第9章 Swift枚举 74 9.1 枚举的定义、结构和使用 74 9.2 枚举在switch语句中的使用 75 9.3 枚举关联值 75 9.4 枚举原始值 76 第10章 Swift类和结构体 77 10.1 类和结构体的对比 77 10.1.1 类和结构体的定义 78 10.1.2 类和结构体的实例 78 10.1.3 类和结构体的属性访问 78 10.2 结构体是值类型 79 10.3 类是引用类型 79 10.4 如何选择类和结构体 79 10.5 集合类型的赋值和复制 80 第11章 Swift属性 81 11.1 存储属性 81 11.1.1 普通存储属性 81 11.1.2 延迟存储属性 82 11.2 计算属性 82 11.3 属性观察器 84 11.4 全局变量和局部变量 85 11.5 静态属性 85 第12章 Swift方法 86 12.1 实例方法 86 12.1.1 使用类中定义的实例方法 86 12.1.2 使用结构体中定义的实例方法 87 12.1.3 使用枚举中定义的实例方法 88 12.2 静态方法 89 12.2.1 使用类中定义的静态方法 89 12.2.2 使用结构体中定义的静态方法 89 第13章 Swift下标 91 13.1 下标的定义 91 13.2 下标的用法 92 13.3 下标脚本 93 第14章 Swift继承 95 14.1 继承的定义 95 14.2 继承的一般用法 95 14.3 重写父类的方法和属性 96 14.3.1 重写父类的方法 96 14.3.2 重写父类的属性 97 14.4 防止父类的特性被重写 98 第15章 Swift初始化 99 15.1 初始化的定义 99 15.2 为存储属性设置初始值 99 15.3 自定义构造函数 100 15.4 默认构造函数 101 15.5 值类型的初始化 102 15.6 引用类型的初始化 103 15.6.1 指定构造函数和便利构造函数 104 15.6.2 类的代理初始化调用 104 15.6.3 两段式构造过程 105 15.6.4 构造函数的继承和重写 107 15.6.5 自动构造函数的继承 108 15.6.6 指定和便利构造器的实战 109 15.7 可失败构造函数 111 15.8 必要构造函数 116 15.9 通过闭包或方法设置属性的默认值 116 第16章 Swift析构 119 16.1 析构的原理 119 16.2 析构的实战 119 第17章 Swift错误处理 122 17.1 创建错误类型 122 17.2 抛出错误 123 17.3 捕获和处理错误 124 17.4 不处理错误 126 17.5 将错误转为可选类型 126 第18章 Swift泛型 128 18.1 泛型能解决的问题 128 18.2 泛型函数 129 18.3 类型参数 130 18.4 命名类型参数 131 18.5 泛型类型 131 18.6 泛型类型的扩展 133 18.7 类型约束 134 18.8 关联类型 136 18.9 条件语句 138 第19章 Swift扩展 140 19.1 扩展的定义和语法 140 19.2 扩展计算属性 140 19.3 扩展构造函数 141 19.4 扩展方法 143 19.5 扩展下标 144 19.6 扩展嵌套函数 144 第20章 Swift协议 146 20.1 协议的定义和语法 146 20.2 对属性的规定 147 20.3 对方法的规定 148 20.4 对变异方法的规定 149 20.5 对构造函数的规定 150 20.6 协议也是一种类型 151 20.7 代理 152 20.8 在扩展中添加协议 155 20.9 协议类型的集合 155 20.10 协议的继承 156 20.11 协议类型的组合 157 20.12 检查协议的一致性 158 第2篇 iOS 11基础开发篇 第21章 入门级 163 21.1 开发环境配置 163 21.2 Playground 164 21.3 第一个App 168 21.4 创建用户交互 178 第22章 初级 181 22.1 AutoLayout 181 22.2 StackView 184 22.3 Size Class 192 22.4 Table View 197 22.4.1 原型单元格 199 22.4.2 代理模式 201 22.4.3 连接数据源 203 22.5 自定义单元格 204 22.6 单元格交互 216 22.7 单元格滑动菜单 219 22.8 导航和转场 226 第23章 中级 235 23.1 Model重构 235 23.2 静态单元格 241 23.3 导航栏、状态条和动态字体的定制技巧 248 23.4 视差动画 256 23.5 特效、动画和手势 259 23.6 JSON编/解码 271 23.7 录入新数据场景 276 23.8 真机部署 285 23.9 相册、拍照和录制视频 287 第3篇 游戏实战篇 第24章 卡牌斗兽棋 299 24.1 项目介绍与分析 299 24.2 项目框架搭建 301 24.3 首页和棋盘控制器的搭建 306 24.4 相关model和走棋逻辑的实现 330 24.5 单机双人对战的实现 337 24.6 人机对战的实现 360 24.7 联网对战的实现 371 24.8 联网对战的优化 400 |