产品特色
编辑推荐
通过Scratch 2.0,我们可以更容易、更有趣地学习计算机编程。《Scratch 2.0趣味编程指南》专注于基础知识并使用免费的Scratch编程语言,教你在计算机浏览器中使用图形、定制的功能块,开发出交互式故事、游戏、动画以及其他程序。
《Scratch 2.0趣味编程指南》为初学者量身打造,采用动手实践的学习方法,强调编程逻辑的设计和开发。你将学习一些重要的编程概念,而又无需陷入复杂的细节。《Scratch 2.0趣味编程指南》介绍的基本原理,也适用于学习其 他较为复杂的编程语言。
通过这本广受欢迎的、针对青少年读者的Scratch 2.0图书,你可以在不知不觉之中以快速、友好的方式学习基础知识并且在线分享你的作品。
本书中包含的精彩Scratch 2.0项目和游戏有:
+Wiggly 先生的舞蹈
+Scratch 虚拟鱼缸
+家庭影集
+NBA 知识问答游戏
+猜数字游戏
+小猫追球游戏
+疯狂的8 号球游戏
+家庭照片电影
+涂鸦绘图应用程序
+小猫钓鱼应用程序
+Scratch Pong游戏
内容简介
Scratch 是MIT 媒体实验室开发的一种编程语言,其目的是教授孩子和其他初学者学习编程。Scratch 2.0 支持计算机游戏、交互式故事、图形图像和计算机动画以及各种其他多媒体项目的开发。《Scratch 2.0趣味编程指南》的主要目的是通过开发一系列生动有趣的编程项目,帮助读者掌握使用Scratch2.0 进行计算机编程的基础知识。《Scratch 2.0趣味编程指南》分为14 章。第1 ~ 4 章介绍了Scratch 2.0 及其开发环境,带领读者学习构成Scratch 2.0 项目的各种不同的部分,然后学习如何创建和执行Scratch 2.0 项目。第5 ~ 13 章详细介绍如何使用各种不同类型的Scratch 2.0 功能块。读者将学习使用功能块来移动物体、存储和访问数据以及执行数学、条件和重复逻辑;此外,还将学习如何加入声音,以及绘制线条和形状。第14 章介绍了碰撞检测的概念,并且介绍了如何综合应用所学的知识来开发各种街机风格的游戏。
《Scratch 2.0趣味编程指南》适合对计算机程序设计的基础知识感兴趣的青少年以及不同年龄的初学者阅读,也适合家长和老师作为指导青少年学习计算机程序设计的入门教程。
作者简介
Jerry Lee Ford, Jr. 是一名作者和讲师,也是一名拥有24 年经验的IT 从业
者,他做过自动化分析师、技术经理、技术支持分析师、自动化工程师和安全
分析师。他是37 本图书的作者,还与人合著了2 本图书。他拥有弗吉尼亚联邦大学的商务管理硕士学位,并且担任网络技术课程的助理讲师超过5 年的时间。
目录
第1 章 Scratch 2.0 简介..... 1
1.1 了解Scratch 2.0 ............. 2
1.1.1 想法—程序—
分享 ...................... 2
1.1.2 Scratch 简介 ......... 3
1.1.3 Scratch 2.0 基于
功能块的编程
方法 ...................... 4
1.2 准备使用Scratch 2.0 ..... 5
1.3 创建第一个Scratch 2.0
应用程序 ......................... 7
1.3.1 创建新的Scratch 2.0
项目 ...................... 7
1.3.2 修改角色属性 ...... 9
1.3.3 添加代码
功能块 ................ 10
1.3.4 保存作品 ............ 12
1.4 加入Scratch 2.0 全球
社区 ............................... 12
1.4.1 分享你的作品 .... 13
1.4.2 在Scratch 2.0 网站
上注册 ................ 14
1.4.3 改变你的Scratcher
状态 .................... 16
1.4.4 保持联系 ............ 16
第2 章 熟悉Scratch 2.0
开发环境.............. 18
2.1 熟悉Scratch 2.0 项目
编辑器 ........................... 19
2.1.1 熟悉菜单栏
命令 .................... 19
2.1.2 在舞台上运行
Scratch 2.0 应用
程序 .................... 21
2.1.3 以全屏模式运行
应用程序 ............ 22
2.1.4 控制应用程序
执行 .................... 23
2.1.5 使用角色列表 .... 23
2.1.6 生成新的角色 .... 25
2.1.7 跟踪鼠标指针
位置 .................... 26
2.1.8 在代码功能块组
之间切换 ............ 27
2.1.9 熟悉脚本区域 .... 28
2.1.10 书包 .................. 33
2.2 添加项目说明、备注和
致谢 ............................... 34
2.3 使用Scratch 的绘图编辑
器创建新的角色 ........... 35
2.3.1 查看绘图画布 .... 37
2.3.2 使用编辑工具 .... 37
2.3.3 使用按钮控件 .... 40
2.3.4 指定颜色设置 .... 40
2.3.5 配置角色的旋转
中心 .................... 40
第3 章 Scratch 项目的基本
组件概览..............42
3.1 操作功能块和栈 .......... 43
3.1.1 参数 .................... 43
3.1.2 默认值 ................ 44
3.2 6 种基本的Scratch
功能块 ........................... 45
3.2.1 使用栈功能块 .... 45
3.2.2 使用启动
功能块 ................ 46
3.2.3 使用侦测
功能块 ................ 47
3.2.4 使用布尔
功能块 ................ 47
3.2.5 C 功能块 ............ 47
3.2.6 结束功能块 ........ 48
3.3 注意监视器 .................. 48
3.4 10 种Scratch 功能块 .... 49
3.4.1 在绘制画布上
移动对象 ............ 50
3.4.2 改变对象的
外观 .................... 51
3.4.3 发出一些声音 .... 53
3.4.4 绘制线条和
形状 .................... 54
3.4.5 存储和访问
数据 .................... 55
3.4.6 事件驱动的
编程 .................... 56
3.4.7 实现循环和条件
逻辑 .................... 57
3.4.8 侦测角色位置和
环境输入 ............ 58
3.4.9 使用运算符 ........ 59
3.4.10 定制功能块和
特殊功能块 ...... 60
3.5 获取功能块的帮助
信息 ............................... 62
第4 章 Wiggly 先生的
舞蹈——一个快速
Scratch 项目........64
4.1 用Scratch 编程 ............ 65
4.2 创建“Wiggly 先生的
舞蹈”应用程序 ........... 66
4.2.1 步骤1:创建一个
新的Scratch
项目 .................... 67
4.2.2 步骤2:给舞台
添加一个背景 .... 68
4.2.3 步骤3:添加并
删除角色 ............ 70
4.2.4 步骤4:添加
音乐 .................... 72
4.2.5 步骤5:播放跳舞
音乐 .................... 74
4.2.6 步骤6:让Wiggly
先生跳舞 ............ 76
4.2.7 步骤7:测试新
项目的运行 ........ 78
第5 章 移动物体..............79
5.1 使用移动代码功能块 .... 80
5.2 移动和旋转角色 .......... 80
5.3 设置角色方向 .............. 82
5.4 重定位角色 .................. 84
5.5 修改角色的坐标 .......... 86
5.6 在舞台上弹回角色并
控制旋转角度 ............... 86
5.7 记录角色的坐标和
方向 ............................... 87
5.8 Scratch 卡片 ................. 88
5.9 创建一个Scratch 虚拟
鱼缸 ............................... 90
5.9.1 步骤1:创建一个
新的Scratch 应用
程序 .................... 91
5.9.2 步骤 2:添加舞台
背景 .................... 91
5.9.3 步骤 3:添加、删
除角色 ................ 91
5.9.4 步骤4:给舞台
添加合适的声音
文件 .................... 92
5.9.5 步骤5:播放声音
文件 .................... 92
5.9.6 步骤6:实现小鱼
游泳动画 ............ 92
5.9.7 步骤7:执行新的
Scratch 项目 ....... 94
第6 章 感知角色的位置和控制
环境设置..............96
6.1 使用侦测功能块 .......... 97
6.2 检测角色冲突和对象
之间的距离 .................. 97
6.3 提示并收集用户
输入 ............................ 102
6.4 获取键盘输入、鼠标
按键和坐标状态 ........ 103
6.5 获取音频数据 ............ 106
6.6 收集和处理视频
输入 ............................ 107
6.7 使用计时器 ................ 109
6.8 获取舞台和角色的
数据 .............................110
6.9 获取日期、时间数据和
用户名称 .....................110
6.10 创建家庭影集应用
程序 ...........................111
6.10.1 步骤1:创建一个
新的Scratch 2.0
项目 ................ 112
6.10.2 步骤2:添加并
删除角色和
造型 ................ 112
6.10.3 步骤3:给舞台
添加合适的声音
文件 ................ 113
6.10.4 步骤4:播放声音
文件 ................ 114
6.10.5 步骤5:添加显示
照片所需的编程
逻辑 ................ 114
6.10.6 步骤6:保存并执
行新的Scratch 2.0
项目 ................ 115
第7 章 存储和访问数据..... 116
7.1 学习如何操作应用
程序数据 ......................117
7.2 在变量中保存数据 .....118
7.2.1 创建Scratch 2.0
变量 .................. 118
7.2.2 将变量赋值给角色
和舞台 .............. 119
7.2.3 变量名的命名
规则 .................. 119
7.2.4 变量的作用域 ... 120
7.3 删除变量 .................... 122
7.4 访问属于其他角色的
变量 ............................ 123
7.5 变量功能块的使用
示例 ............................ 124
7.6 在列表中存储集合
数据 ............................ 125
7.7 开发一个NBA 知识问答
游戏项目 .................... 129
7.7.1 步骤1:创建一个
新的Scratch 2.0
项目 .................. 130
7.7.2 步骤2:为舞台
选择适合的
背景 .................. 130
7.7.3 步骤3:添加和
删除角色 .......... 130
7.7.4 步骤4:添加应用
程序所需的
变量 .................. 131
7.7.5 步骤5:为收集
用户输入的按钮
角色添加脚本 ... 132
7.7.6 步骤6:为主持人
添加脚本 .......... 133
7.7.7 步骤7:测试新的
应用程序 .......... 136
第8 章 数学运算............ 137
8.1 加减乘除四则运算 .... 138
8.2 理解运算优先级 ........ 138
8.3 生成随机数 ................ 139
8.4 比较运算 .................... 140
8.5 进行逻辑比较 ............ 142
8.6 操作字符串 ................ 143
8.7 舍入数字和获取余数 ... 144
8.8 使用数学函数 ............ 145
8.9 开发猜数字游戏 ........ 146
8.9.1 步骤1:创建新的
Scratch 2.0 应用程
序项目 .............. 148
8.9.2 步骤2:给舞台
添加背景 .......... 148
8.9.3 步骤3:添加和
删除角色 .......... 148
8.9.4 步骤4:添加应用
程序所需的
变量 .................. 149
8.9.5 步骤5:为应用
程序添加声音
文件 .................. 149
8.9.6 步骤6:添加捕获
用户输入的
脚本 .................. 150
8.9.7 步骤7:处理用户
猜测 .................. 151
8.9.8 步骤8:保存并运
行新的Scratch 2.0
应用程序 .......... 152
第9 章 控制脚本执行...... 153
9.1 Scratch 的事件功能块和
控制功能块简介 ......... 154
9.2 事件编程 .................... 154
9.2.1 启动脚本执行 ... 154
9.2.2 发送和接受广播
消息 .................. 155
9.3 控制脚本执行 ............ 157
9.3.1 暂停脚本执行 ... 157
9.3.2 执行循环 .......... 158
9.3.3 条件编程逻辑 ... 159
9.3.4 条件功能块的
嵌套 .................. 161
9.3.5 避免死循环 ...... 161
9.3.6 停止脚本的
执行 .................. 162
9.3.7 克隆角色 .......... 163
9.4 开发一个小猫追球
游戏 ............................ 164
9.4.1 步骤1:创建一个
新的Scratch
项目 .................. 166
9.4.2 步骤2:添加和
删除角色 .......... 166
9.4.3 步骤3:添加应用
程序所需的
变量 .................. 167
9.4.4 步骤4:给应用
程序添加声音
文件 .................. 167
9.4.5 步骤5:添加控制
小球移动的
脚本 .................. 167
9.4.6 步骤6:添加显示
游戏结束消息的
脚本 .................. 168
9.4.7 步骤7:添加控制
和协调游戏运行
所需的脚本 ...... 168
9.4.8 步骤8:保存并
运行测试 .......... 170
第10 章 改变角色的外观和
行为..................171
10.1 影响角色和舞台的
外观功能块 .............. 172
10.2 让角色说话和思考 .... 172
10.3 显示和隐藏角色 ...... 173
10.4 改变角色的造型和
舞台的背景 .............. 174
10.4.1 改变角色的
造型 ................ 174
10.4.2 改变舞台的
背景 ................ 176
10.5 对造型和背景应用
特效 .......................... 176
10.6 改变角色的大小 ...... 178
10.7 确定当两个角色重叠的
时候如何显示 .......... 179
10.8 获取造型和背景
数据 .......................... 180
10.9 开发疯狂的8 号球
游戏 .......................... 180
10.9.1 步骤1:创建一个
新的Scratch 2.0
项目 ................ 182
10.9.2 步骤2:添加和
删除角色 ........ 182
10.9.3 步骤3:添加应用
程序所需的
变量 ................ 183
10.9.4 步骤4:给应用
程序添加声音
文件 ................ 183
10.9.5 步骤5:添加控制
8 号球中的8 的显
示的脚本 ........ 183
10.9.6 步骤6:添加运行
游戏所需的编程
逻辑 ................ 184
10.9.7 步骤7:保存和
运行Scratch 2.0
项目 ................ 184
第11 章 添加生动的声音.... 185
11.1 播放声音 .................. 186
11.2 敲鼓 .......................... 187
11.3 弹奏音符 .................. 188
11.4 设置音量 .................. 189
11.5 设置并修改节奏 ...... 190
11.6 创建家庭照片电影 .... 190
11.6.1 步骤1:创建一个
新的Scratch 2.0
项目 ................ 192
11.6.2 步骤2:添加和
删除角色和
背景 ................ 192
11.6.3 步骤3:添加应用
程序所需的变量 ................ 194
11.6.4 步骤4:给应用程
序添加声音
文件 ................ 195
11.6.5 步骤5:编写应用
程序的编程
逻辑 ................ 195
11.6.6 步骤6:命名并
测试Scratch 2.0
项目 ................ 198
第12 章 绘制线条和
形状................. 199
12.1 清除舞台区域 .......... 200
12.2 复制舞台上的造型的
实例 .......................... 200
12.3 使用画笔绘画 .......... 201
12.4 设置画笔颜色 .......... 202
12.5 修改画笔色度 .......... 204
12.6 设置画笔的大小 ...... 204
12.7 创建涂鸦绘图应用
程序 .......................... 206
12.7.1 步骤1:创建一个
新的Scratch 2.0
项目 ................ 207
12.7.2 步骤2:添加和
删除角色 ........ 207
12.7.3 步骤3:创建控制
应用程序的
脚本 ................ 208
12.7.4 步骤4:保存并
运行测试 ........ 211
第13 章 改进代码组织..... 212
13.1 通过过程来简化脚本的
组织 .......................... 213
13.1.1 创建定制功
能块 ................ 213
13.1.2 使用定义的功能
块来创建一个
过程 ................ 215
13.2 用注释增加程序的
清晰度 ...................... 216
13.3 使用克隆简化项目并
减小项目大小 .......... 217
13.4 创建一个小猫钓鱼应用
程序 .......................... 219
13.4.1 步骤1:创建一个
新的Scratch 2.0
项目 ................ 220
13.4.2 步骤2:添加一个
合适的背景 .... 220
13.4.3 步骤3:添加应用
程序的角色 .... 220
13.4.4 步骤4:定义应用
程序变量 ........ 221
13.4.5 步骤5:创建用来
控制应用程序的
脚本 ................ 222
13.4.6 步骤6:测试
Scratch 2.0 ...... 224
第14 章 用碰撞检测进行
游戏开发........... 225
14.1 大多数游戏中的关键
功能 .......................... 226
14.1.1 管理游戏
状态 ................ 226
14.1.2 用循环控制游戏
逻辑 ................ 227
14.1.3 管理屏幕刷新
频率 ................ 228
14.1.4 在舞台上移动
物体 ................ 229
14.1.5 让角色可见和不
可见 ................ 229
14.1.6 制作声音 ........ 230
14.2 碰撞检测 .................. 231
14.3 收集用户输入 .......... 234
14.3.1 捕获键盘
输入 ................ 235
14.3.2 捕获鼠标
输入 ................ 235
14.3.3 记录鼠标移动和
位置 ................ 236
14.3.4 检测鼠标按钮
点击 ................ 236
14.4 创建Scratch Pong .... 237
14.4.1 步骤1:创建一个
新的Scratch 2.0
项目 ................ 238
14.4.2 步骤2:设置背景,
添加并删除
角色 ................ 238
14.4.3 步骤3:添加声音
效果 ................ 239
14.4.4 步骤4:定义
变量 ................ 239
14.4.5 步骤5:创建控制
Scratch Pong 游戏
的脚本 ............ 240
14.4.6 步骤6:测试你的
Scratch 2.0
项目 ................ 244
《小小探险家的奇幻世界》 欢迎来到一个充满无限可能与奇思妙想的数字乐园! 这本书,名叫《小小探险家的奇幻世界》,将带您踏上一段激动人心的旅程,探索一个由代码构建的、栩栩如生的奇妙领域。我们不仅仅是在学习指令和语法,更是在学习如何用自己的想法编织出令人惊叹的故事,创造独一无二的虚拟世界,并赋予它们生命。 想象一下,你手中握着一支神笔,这支笔不是画笔,而是充满魔力的代码。每一次敲击键盘,每一个逻辑的组合,都如同点墨成画,勾勒出你脑海中闪烁的灵感。在这里,你可以是故事的编著者,可以是游戏的创造者,可以是动画的导演,甚至可以是小小星球的建造者。 谁能成为小小探险家? 这本书的读者是谁? 是那些对未知充满好奇的年轻人,是那些喜欢动手尝试、解决问题的孩子们,是那些渴望将脑海中的奇思妙想变为现实的梦想家。无论你是否接触过编程,无论你对电脑有多大的了解,只要你拥有一颗敢于探索的心,这里的大门就为你敞开。我们相信,每一个孩子都蕴含着无穷的创造力,而《小小探险家的奇幻世界》正是激发这份创造力的绝佳伙伴。 我们将在哪里探险? 我们的探险基地,是一个名为“灵感方舟”的虚拟平台。在这个平台上,你将遇到各种各样有趣的“编程积木”,这些积木不仅仅是冰冷的符号,它们是具有强大功能的魔法道具。你可以将它们像搭积木一样组合起来,控制角色的动作,改变场景的氛围,触发事件的发生。 故事的叙述者: 你可以创造属于自己的动画短片,赋予卡通角色生命,让他们表演精彩的故事。想象一下,一只勇敢的小猫咪,如何克服重重困难,最终找到失散的朋友?你可以让它跳跃,奔跑,表达喜悦,甚至学会一门新的语言! 游戏的创造者: 你可以设计各种各样的游戏,从简单的躲避障碍,到复杂的迷宫探险,再到多人对战的策略游戏。你可以设定游戏的规则,设计关卡的难度,甚至为游戏中的角色设计独特的技能。你想做一个拯救公主的游戏,还是一个收集宝藏的冒险? 在这里,你说了算! 艺术的创作者: 你可以利用代码绘制出绚丽的图案,创作动态的艺术品,甚至生成一段独特的音乐。让色彩在屏幕上跳跃,让线条随着你的指令翩翩起舞。你可以设计一个会随着音乐变换形态的图形,或者一个能够根据你的输入生成不同旋律的小乐器。 科学的模拟者: 你可以尝试模拟一些简单的物理现象,比如小球的弹跳,物体的运动轨迹,甚至简单的化学反应。通过观察这些模拟,你可以更直观地理解科学的原理,培养科学的思维方式。 探险的工具箱里有什么? 在《小小探险家的奇幻世界》中,我们将使用一种非常强大且易于理解的工具。这个工具就像是一个色彩斑斓的工具箱,里面装满了各种形状和功能的“代码积木”。你不需要记忆枯燥的指令,只需要通过拖拽和组合这些积木,就能构建出你想要的一切。 指令积木: 这些积木是行动的命令,比如“前进”、“旋转”、“说话”、“播放声音”。你可以将它们按照一定的顺序排列,让你的角色按照你的意愿行动。 事件积木: 这些积木是触发动作的开关,比如“当角色碰到另一个角色时”、“当按下某个按键时”、“当时间到了的时候”。它们是让你的程序变得生动和有反应的关键。 控制积木: 这些积木帮助你管理程序的流程,比如“重复执行”、“如果……那么……”、“等待”。它们让你的程序变得更加智能和灵活。 变量积木: 这些积木可以存储信息,比如分数、生命值、计时器。它们让你的游戏和动画拥有更复杂的逻辑和互动性。 外观积木: 这些积木可以改变角色的造型、颜色,以及屏幕上的背景。你可以让你的角色变大变小,改变它们的颜色,甚至让它们隐身。 声音积木: 你可以为你的角色添加各种有趣的声音效果,或者创作属于自己的音乐。让你的作品拥有听觉的魅力。 我们如何展开探险? 本书的设计,将循序渐进地引导你进行每一次探险。 1. 认识你的探险伙伴: 我们会先介绍这个神奇的“灵感方舟”平台,让你熟悉它的界面和基本操作。就像学习使用地图和指南针一样,这是我们探险的基础。 2. 基础指令的掌握: 我们会从最简单的指令开始,教你如何让一个角色在屏幕上移动,如何让它改变造型,如何发出声音。你会惊奇地发现,简单的指令组合也能创造出有趣的效果。 3. 触发式互动: 接下来,我们将学习如何利用“事件积木”让你的作品变得“活”起来。比如,当你的角色碰到墙壁时停下来,或者当你点击某个按钮时播放一段音乐。 4. 逻辑思维的训练: 我们会逐渐引入“控制积木”,让你学会如何让你的程序做出更复杂的判断和决策。例如,如果你的角色碰到了敌人,那么就减少生命值。 5. 故事的编织: 你将学会如何利用你掌握的知识,将你的想法变成一个完整的故事。你会学习如何设计角色的对话,如何控制场景的切换,如何让故事拥有起承转合。 6. 游戏的开发: 想要创建一个属于自己的游戏? 我们将一步步教你如何设定游戏的目标,如何设计得分机制,如何添加关卡和挑战。 7. 创意的延伸: 到了后期,我们鼓励你自由发挥,将所学到的知识融会贯通,创造出属于你自己的独特作品。你可以尝试制作一个互动式的电子书,一个可以演奏的虚拟乐器,甚至一个简单的物理模拟器。 为什么选择《小小探险家的奇幻世界》? 寓教于乐: 我们相信学习不应该是枯燥乏味的。本书将通过大量的趣味案例和挑战,让你在玩乐中掌握编程的技巧。 培养逻辑思维: 编程本质上是逻辑思维的训练。在解决问题的过程中,你会不断锻炼你的分析能力、推理能力和解决问题的能力。 激发创造力: 这个数字世界为你提供了一个无限的画布,你可以尽情挥洒你的创意,将你的想象力变为现实。 为未来打下基础: 编程已经成为一项重要的未来技能。通过这本书,你将提前接触到这个领域,为未来的学习和发展打下坚实的基础。 成就感满满: 当你看到自己亲手创造的作品在屏幕上活跃起来时,那种由衷的喜悦和成就感是无与伦比的。 《小小探险家的奇幻世界》不仅仅是一本书,它是一扇通往数字创意世界的大门。它为你准备了地图、指南针和神奇的工具,等待你去探索,去创造,去发现属于你自己的精彩! 让我们一起,成为最棒的小小探险家,用代码点亮我们的奇幻世界吧!