零基础学Swift(图文版)
书籍作者:Gloria |
ISBN:9787115485595 |
书籍语言:简体中文 |
连载状态:全集 |
电子书格式:pdf,txt,epub,mobi,azw3 |
下载次数:5848 |
创建日期:2021-02-14 |
发布日期:2021-02-14 |
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板 |
内容简介
这是一本好玩又实用的Swift语言编程入门学习读物,本书语言轻松诙谐,配以彩色图片,即使是没有任何编程经验的初学者也能很快学会。本书以iPhone应用为基础框架对Swift语言的基本概念、实际应用进行了展开讲解,让读者逐步学习Swift语言的各种编程运用。
作者简介
格洛丽亚· 温奎斯特是一位老苹果爱好者,小时候还在家里的Apple III计算机上玩过魔域大冒险游戏。她先学的Logo和BASIC语言,然后在读机械工程学位的时候学了C语言。她做了一段时间的机械工程师,然后发现她真正想要的工作是写代码。于是她去读夜校来学习Java,然后是Lisp,然后是JavaScript,zui后是iOS编程和Objective-C。她发现她热爱编写app,一旦开始jiu再没有放手过!
麦特·麦卡锡10岁的时候在Apple II+上学习了BASIC编程。他还记得他的D一个程序,虽然只有两行代码,但是立刻jiu把他迷住了。他用很多编程语言做过职业编程(也有为了乐趣的)。不过当2008年iOS App Store出现的时候,他立刻沉迷于其中,迅速开始以他的公司——番茄交互有限责任公司——的名义发布iOS app了。麦特从2012年开始成为职业iOS工程师,开发给医生和病人用的健康app。
格洛丽亚和麦特住在马萨诸塞州的康科德,他们是六个孩子的混合家庭的父母。《给孩子的iPhone App编程》是他们的D一本书。
编辑推荐
如果你对学习如何编程有兴趣,这本书就是很好的起点!《给孩子读的iPhone App编程》是面向孩子写的,但是也是初学编程的成年人的很好的资源。无论是没有编程的经验,还有有经验但是想学习如何开发app,都会发现这本书是有用的。
如果你是初学编程,我们建议你从头开始,然后一路向前,把D一部分“Xcode和Swift”一章一章地过。这几章教你基础的环环相扣的编程技能。一边读,一边要测试书中的例子,试试写自己的代码。
如果你已经有其他语言的编程经验,我们建议你从D1章开始,它告诉你如何下载安装Xcode,然后带你创建一个简单的“Hello, world!“的app。浏览一下d2章到第4章,然后第6章到第8章是可以的,但是不要跳过第5章。第5章里有可选值,这是Swift里du有且重要的编程特性。
D1章是关于在计算机上安装Xcode,然后有一个简单的教程,教你做出一个可以在iPhone、iPad或iPod touch上运行的“Hello, world!“的app。
D2章用Xcode的playground环境来探究编程,告诉你如何创建各种数据类型的变量和常量。
第3章和第4章教你如何控制计算机程序的流程。第3章讲了if语句和条件,第4章讲了for-in和while循环。
第5章讲了可选值,这是可以有值也可以没有值的变量或常量。可选值是Swift编程语言中du有的重要概念,一定要仔细阅读这一章。
在第6章,你会学到如何使用两种Swift容器类型:数组和字典。
第7章讲了函数,这是一段可以不断调用来做特定任务的代码。
第8章,你会学到如何做自己的类,这是用来创建表示真实世界内容的对象的蓝图,对象是像背包、汽车、猫咪或你能想象得到的任何东西。
D二部分“生日记录”包含了第9章到D13章。这五章带你创建一个app,可以用来在手机上保存朋友的生日,而且会发送提醒给你好去祝他们生日快乐。
第三部分“校园滑板”包含了D14章到D18章。这几章带你开发一个游戏,玩家可以控制滑板角色跳过人行道上的沟、采摘钻石来获得加分。
最后,附录“资源”给出了做自己的app时有用的资源,包括纠错的建议、去哪里找有用的文档、方便的快捷键,以及Xcode版本的信息。
目录
目 录
第 一部分 Xcode和Swift 1
第 1章 Hello,world! 3
1.1 安装Xcode,你的代码编辑器 4
1.2 你的第 一个App! 5
1.2.1 介绍故事板 9
1.2.2 从对象库加入用户界面元素 10
1.2.3 保存你的工作 13
1.3 在实际的设备上运行这个App 14
1.4 我们学到了什么 16
第 2章 学习在playground中编程 17
2.1 常量和变量 19
2.1.1 何时该使用常量或变量 21
2.1.2 给常量和变量起名字 22
2.2 数据类型 22
2.2.1 声明数据类型 23
2.2.2 常用数据类型 24
2.2.3 类型推断 25
2.2.4 用类型转换来改变数据类型 26
2.3 运算符 27
2.3.1 计算的顺序 30
2.3.2 带括号的计算顺序 31
2.3.3 复合赋值运算符 31
2.4 我们学到了什么 33
第3章 做选择 35
3.1 布尔表达式 36
3.1.1 相等和不相等 36
3.1.2 大于和小于 37
3.1.3 复合布尔表达式 38
3.2 条件语句 40
3.2.1 if语句 40
3.2.2 switch语句 43
3.3 我们学到了什么 45
第4章 写重复执行的代码 47
4.1 打开调试区域 47
4.2 用for-in在一段范围内或一个容器内循环 48
4.2.1 说你好! 48
4.2.2 说早上好! 49
4.3 测试条件的while循环 50
4.3.1 猜数 51
4.3.2 缩短字符串 52
4.4 用哪个循环? 53
4.5 嵌套和作用域 54
4.5.1 嵌套的代码块 54
4.5.2 常量和变量的作用域 55
4.6 我们学到了什么 57
第5章 可选值能让程序更安全 59
5.1 什么是可选值? 59
5.2 创建可选值 60
5.2.1 可选值 61
5.2.2 特殊的运算符: 65
5.3 我们学到了什么 65
第6章 在字典和数组中保存成批数据 67
6.1 用数组有序保存数据 67
6.1.1 可写和不可写的数组 68
6.1.2 类型推断 68
6.1.3 访问数组中的元素 69
6.1.4 小心范围 69
6.1.5 向数组中添加元素 70
6.1.6 合并数组 71
6.1.7 从数组中删除元素 71
6.1.8 替换数组中的元素 72
6.1.9 使用数组的属性 73
6.1.10 循环遍历数组 74
6.2 字典是关键! 75
6.2.1 初始化字典 75
6.2.2 访问字典中的值 76
6.2.3 往字典里添加元素 77
6.2.4 从字典中删除元素 77
6.2.5 替换字典中的元素 78
6.2.6 使用字典的属性 78
6.2.7 遍历字典 79
6.3 我们学到了什么 80
第7章 函数是场聚会,邀请你来参加 81
7.1 输入和输出 81
7.2 编写自定义的函数 82
7.3 有参数的函数更强大 83
7.3.1 制作聚会邀请信 84
7.3.2 一次性邀请所有的朋友 86
7.3.3 通知客人 87
7.4 参数标签 89
7.4.1 添加自定义参数标签 90
7.4.2 删除参数标签 91
7.5 返回值 91
7.5.1 哪个盒子大? 91
7.5.2 条件返回 92
7.6 我们学到了什么 94
第8章 自定义类和结构 95
8.1 创建类 96
8.1.1 类的定义 96
8.1.2 在属性中保存数据 97
8.1.3 创建类的实例 97
8.1.4 访问类的属性 98
8.1.5 用初始化方法定制每一个蛋糕 100
8.1.6 添加一个生日祝贺方法 103
8.1.7 写一个助手方法 104
8.2 叫作self的特殊属性 106
8.3 类的继承 107
8.3.1 创建父类 108
8.3.2 创建子类 108
8.3.3 通过类型转换来检测数据类型 110
8.3.4 用向下类型转换使类型更明确 113
8.4 数值类型和引用类型 114
8.5 使用结构 117
8.6 我们学到了什么 118
D二部分 生日记录本 119
第9章 在故事板上创建按钮和屏幕 121
9.1 App的概述 121
9.2 创建一个新的Xcode项目 122
9.3 添加App的图标 125
9.4 显示朋友的生日 126
9.4.1 添加表格视图控制器 127
9.4.2 添加导航控制器 129
9.4.3 添加按钮 130
9.5 设置输入控件标签 133
9.5.1 添加朋友的名字和生日 133
9.5.2 用自动布局让App在所有设备上都有wan美外观 138
9.5.3 添加保存和放弃的按钮 139
9.6 我们学到了什么 140
第 10章 用Birthday类来处理用户输入 141
10.1 Birthday类 141
10.1.1 创建一个新文件 142
10.1.2 编写Birthday类 144
10.2 做用户输入的程序 144
10.2.1 创建Add a Birthday的视图控制器 145
10.2.2 把代码和输入控件连接起来 146
10.2.3 把代码连接到故事板 147
10.2.4 设置zui大的出生日期 149
10.3 保存Birthday 150
10.3.1 挂上Save按钮 150
10.3.2 从文本输入框读取文本 151
10.3.3 从日期挑选器获得日期 152
10.3.4 创建一个Birthday对象 153
10.4 添加Cancel按钮 153
10.5 我们学到了什么 154
第 11章 显示生日 155
11.1 创建Birthday列表 155
11.1.1 创建生日表格视图控制器 156
11.1.2 在表格视图上加单元格 158
11.1.3 设置Birthdays表格视图控制器 161
11.1.4 在表格视图中显示生日 162
11.2 合起来 166
11.2.1 代理 166
11.2.2 设置代理连接两个控制器 171
11.3 我们学到了什么 172
第 12章 保存生日 173
12.1 在数据库中保存生日 173
12.1.1 Birthday数据项 174
12.1.2 Birthday属性 175
12.1.3 应用程序代理 177
12.2 代码整洁 182
12.3 给App多做些功能 185
12.3.1 按字母顺序排列生日 186
12.3.2 删除生日 187
12.4 我们学到了什么 189
第 13章 发出生日通知 191
13.1 用户通知框架 191
13.1.1 注册本地通知 192
13.1.2 安排通知 194
13.1.3 删除通知 199
13.2 我们学到了什么 200
第三部分 校园滑板高手 201
第 14章 设置舞台 203
14.1 哪里可以获得图片和声效? 204
14.2 用Xcode的SpriteKit做游戏 204
14.3 创建游戏项目 205
14.4 添加图片 206
14.5 场景:显示背景图片 207
14.6 要如何播放:屏幕方向 211
14.7 为不同的屏幕分辨率调整图像的大小 213
14.8 我们学到了什么 216
第 15章 真的把“Schoolhouse Skateboarder”做成游戏 217
15.1 我们的英雄:滑板高手 217
15.1.1 创建Skater角色类 218
15.1.2 引入SpriteKit 218
15.1.3 给Skater类加入自定义的属性 218
15.1.4 在场景中创建Skater的实例 219
15.1.5 设置Skater 220
15.1.6 让Skater出现在屏幕上 222
15.1.7 理解SpriteKit的调试信息 223
15.2 希丁的砖块 224
15.2.1 创建人行道砖块 224
15.2.2 刷新人行道砖块 226
15.2.3 用砖块填满屏幕 228
15.2.4 留下跳的沟 229
15.3 游戏循环 231
15.3.1 追踪更新的时间 231
15.3.2 计算每次更新所用的时间 231
15.3.3 用所用的时间来调整滚动的速度 232
15.3.4 更新砖块 233
15.4 天天向上——让滑板角色跳跃 234
15.4.1 使用单击手势识别器 234
15.4.2 用简单的方法仿真重力 236
15.4.3 检查落地 237
15.5 我们学到了什么 238
第 16章 使用SpriteKit的物理引擎 239
16.1 设置物理世界 240
16.2 物理体 240
16.2.1 给物理体以形状 241
16.2.2 设置物理体的属性 242
16.2.3 给滑板角色赋予物理体 243
16.2.4 给砖块添加物理体 245
16.3 接触与碰撞 246
16.3.1 处理接触和碰撞 246
16.3.2 响应接触 249
16.4 对物理体施加力 250
16.5 开始和结束游戏 251
16.5.1 开始游戏 251
16.5.2 结束游戏 254
16.6 我们学到了什么 255
第 17章 调整难度、采摘钻石和记录分数 257
17.1 让游戏加速 257
17.2 增加多个高度的人行道平台 258
17.2.1 定义多个砖块高度 259
17.2.2 修改砖块派生的方式 260
17.3 增加要采摘的钻石 262
17.3.1 派生和记录钻石 262
17.3.2 决定何时产生新钻石 264
17.3.3 删除钻石 264
17.3.4 更新钻石 266
17.3.5 采摘钻石 267
17.4 实现计分和显示 268
17.4.1 创建标签 268
17.4.2 记录分数 272
17.4.3 更新标签 273
17.4.4 更新玩家分数 274
17.4.5 让钻石有价 275
17.4.6 记录zui高分数 276
17.5 调整游戏规则 277
17.6 我们学到了什么 278
第 18章 游戏的状态、菜单、声音和特效 279
18.1 记录游戏状态 279
18.2 添加菜单系统 281
18.2.1 创建MenuLayer类 282
18.2.2 需要的时候显示菜单层 286
18.2.3 删除菜单层 288
18.3 发出声音 289
18.3.1 添加音频文件 289
18.3.2 在正确的时机播放声音 290
18.4 射出火花 291
18.5 我们学到了什么 297
资源 299
查找错误 299
Apple文档 300
Xcode快捷键 301
iOS仿真器快捷键 302
Xcode的版本 302