新書推薦:
《
火枪与账簿:早期经济全球化时代的中国与东亚世界
》
售價:NT$
352.0
《
《全面与进步跨太平洋伙伴关系协定》国有企业条款研究
》
售價:NT$
449.0
《
银行业架构网络BIAN(全球数字化时代金融服务业框架)(数字化转型与创新管理丛书)
》
售價:NT$
449.0
《
金托邦:江湖中的沉重正义
》
售價:NT$
275.0
《
易经今解:释疑·解惑·见微
》
售價:NT$
403.0
《
东欧史(全二册)-“中间地带”的困境
》
售價:NT$
1010.0
《
虚拟资本:金融怎样挪用我们的未来
》
售價:NT$
352.0
《
刻意练习不生气
》
售價:NT$
179.0
|
編輯推薦: |
本书融合数学、游戏和算法,从零开始讲授编程概念,帮助初学者掌握编程思想和建立Scratch编程知识体系,为青少年提供一本从入门到精通的Scratch编程参考教材。
1数学编程
韩信点兵、鸡兔同笼、冰雹猜想、辗转相除法、卡普雷卡尔黑洞、逻辑推理、成语接龙、约瑟夫环
2游戏编程
海底探险、电子相册、街舞表演、巡线甲虫、反弹球、手势抓蝴蝶、吹生日蜡烛、种蘑菇、乐器演奏
3算法和数据结构
冒泡排序、选择排序、插入排序、快速排序、顺序查找、二分查找、回溯走迷宫、二维数组、队列和栈
|
內容簡介: |
本书是全面讲解图形化编程语言Scratch的编程指南,分为基础编程篇、图形编程篇和进阶编程篇3个部分,系统讲解Scratch基础编程知识和运动、外观、侦测等各功能模块的技术应用,以及常用的数据结构和算法知识,并提供丰富有趣的教学案例和练习题,为青少年提供一本从入门到精通的Scratch编程参考教材。 本书假设读者从未接触过编程,从零基础开始帮助读者逐步建立起Scratch编程的知识体系。本书适合对编程有兴趣的青少年阅读,也适合希望辅导孩子进行编程训练的家长和少儿编程培训机构的教师使用。
|
關於作者: |
谢声涛,小海豚科学馆创始人,致力于线下和线上推广青少年科普教育和编程教育。曾在多家互联网公司工作,历任程序员、研发经理、架构师、技术总监等职,熟悉大规模网站架构设计,擅长复杂应用系统开发,在海量数据管理、搜索引擎技术等应用方面有丰富经验。
|
目錄:
|
〖1〗Scratch编程从入门到精通第1部分基础编程篇第1章编程起步3
1.1Scratch编程概述3
1.1.1为什么用Scratch编程
3
1.1.2从Scratch到Python5
1.1.3Scratch的主要版本7
1.1.4Scratch项目概述9
1.2准备Scratch开发环境10
1.2.1使用Scratch在线
编辑器10
1.2.2安装Scratch离线
编辑器12
1.2.3设置Scratch编辑器
14
1.3Scratch编辑器界面16
1.3.1舞台区17
1.3.2背景和角色列表区17
1.3.3脚本编辑区18
1.3.4造型和背景编辑区18
1.3.5声音编辑区19
1.3.6菜单栏和工具栏20
1.4Scratch指令系统概述20
1.4.1积木的形状特点20
1.4.2积木的操作方法22
1.4.3积木的功能类别24
1.4.4快速查看积木说明25
1.5临摹案例26
1.5.1数学编程: 韩信点兵
26
1.5.2游戏编程: 星际飞行
30
第2章变量和运算36
2.1说和思考指令36
2.1.1跟我做: 小猫背唐诗
37
2.1.2让角色说话和思考38
2.1.3动手练: 小猫的哲学
思考39
2.2问答指令40
2.2.1跟我做: 简单的人机
对话40
2.2.2询问与回答40
2.2.3动手练: 说出字母数
41
2.3变量42
2.3.1跟我做: 小猫变大
变小42
2.3.2变量显示器43
2.3.3变量的数据类型和操作
43
2.3.4变量的命名和作用域
45
2.3.5动手练: 求两数之和
45
2.4数学运算46
2.4.1跟我做: 鸡兔同笼46
2.4.2算术运算和运算优先级
48
2.4.3数学函数48
2.4.4动手练: 计算大桥长度
49
2.5随机数50
2.5.1跟我做: 小鱼逍遥游
50
2.5.2生成随机数51
2.5.3动手练: 随机投点
画圆52
2.6字符串函数53
2.6.1跟我做: 成语接龙
53
2.6.2字符串处理54
2.6.3动手练: 回文诗55
〖1〗Scratch编程从入门到精通〖1〗目录第3章程序控制57
3.1顺序结构57
3.1.1跟我做: 海伦公式
57
3.1.2流程图59
3.1.3顺序结构的程序设计
59
3.1.4动手练: 计算圆锥体积
60
3.2选择结构61
3.2.1跟我做: 求绝对值
61
3.2.2关系运算和逻辑运算
62
3.2.3选择结构的程序设计
64
3.2.4动手练: 判断三角形
构成65
3.3循环结构66
3.3.1跟我做: 冰雹猜想
67
3.3.2循环结构的程序设计
69
3.3.3动手练: 肖像在哪里
71
第4章列表74
4.1列表显示器74
4.1.1跟我做: 求平均气温
74
4.1.2列表显示器的使用
76
4.1.3动手练: 评委打分
77
4.2列表的操作78
4.2.1跟我做: 银行叫号系统
78
4.2.2列表操作积木79
4.2.3动手练: 约瑟夫环
83
第5章过程85
5.1自定义过程85
5.1.1跟我做: 计算圆的面积
86
5.1.2使用自定义过程87
5.1.3动手练: 判断质数
88
5.2递归的使用89
5.2.1跟我做: 辗转相除法
89
5.2.2递归调用的分析91
5.2.3动手做: 斐波那契数列
93
5.3面向过程编程94
5.3.1跟我做: 卡普雷卡尔
黑洞94
5.3.2模块化程序设计96
5.3.3动手练: 数字黑洞
1和496
第6章调试程序98
6.1程序错误概述98
6.1.1产生程序错误的
原因98
6.1.2减少程序错误的方法
99
6.2程序调试方法100
6.2.1使用数据显示器100
6.2.2输出日志100
6.2.3降低程序运行速度
101
6.2.4设置断点102第2部分图形编程篇第7章舞台107
7.1海底探险1: 游戏场景107
7.1.1游戏情节介绍107
7.1.2制作游戏场景108
7.2舞台布局和管理110
7.2.1舞台布局和显示模式
110
7.2.2舞台背景管理113
7.3动手练: 电子相册117
第8章角色外观和运动119
8.1创建角色119
8.1.1海底探险2: 创建角色
119
8.1.2创建角色的方式122
8.1.3角色列表区122
8.2角色造型123
8.2.1海底探险3: 角色动画
123
8.2.2造型控制124
8.2.3动手练: 街舞表演
125
8.3角色运动126
8.3.1海底探险4: 角色运动
126
8.3.2运动控制130
8.3.3动手练: 飞行猫134
8.4角色特效135
8.4.1海底探险5: 角色特效
135
8.4.2设置角色特效136
8.4.3动手练: 魔术师137
第9章侦测139
9.1距离侦测139
9.1.1海底探险6: 距离侦测
139
9.1.2距离侦测积木140
9.1.3动手练: Pico和小狗
散步140
9.2碰撞侦测142
9.2.1海底探险7: 碰撞侦测
142
9.2.2碰撞侦测积木144
9.2.3动手练: 巡线甲虫
147
9.3键盘和鼠标侦测148
9.3.1海底探险8: 扔炸弹
148
9.3.2键盘和鼠标侦测积木
149
9.3.3动手练: 反弹球150
9.4时间侦测151
9.4.1海底探险9: 游戏
倒计时151
9.4.2时间侦测积木151
9.4.3动手练: 时钟153
9.5视频侦测154
9.5.1跟我做: 人体感应开灯
154
9.5.2视频侦测积木155
9.5.3动手练: 手势抓蝴蝶
157
9.6响度侦测158
9.6.1跟我做: 声控开灯
158
9.6.2响度侦测积木158
9.6.3动手练: 吹生日蜡烛
159
第10章绘图161
10.1海底探险10: 游戏计分
和血条161
10.2画笔164
10.2.1跟我做: 彩虹画板
164
10.2.2画笔积木165
10.2.3动手练: 颜色图谱
167
10.3图章167
10.3.1跟我做: 种蘑菇
167
10.3.2图章积木168
10.3.3动手练: 彩色风车
169
第11章声音171
11.1海底探险11: 游戏音效
171
11.1.1为游戏增加音效
171
11.1.2复制更多角色173
11.2播放声音174
11.3乐器演奏175
11.3.1跟我做: 模拟乐器
175
11.3.2乐器演奏积木177
11.3.3弹奏鼓声积木179
11.3.4动手练: 演奏
《小毛驴》180第3部分进阶编程篇第12章克隆183
12.1海底探险12: 克隆角色
183
12.1.1克隆功能的使用
183
12.1.2用克隆技术改造
游戏185
12.2面向对象编程187
12.2.1用角色模式编程
187
12.2.2用克隆模式编程
188
12.3动手练: 飞扬的小鸟190
第13章消息和事件192
13.1海底探险13: 消息机制
192
13.1.1广播和接收消息
192
13.1.2用消息机制改造
游戏193
13.2消息机制197
13.2.1消息的异步和同步
197
13.2.2消息队列的应用
197
13.3事件驱动编程199
13.3.1事件的并发执行
199
13.3.2避免事件的并发
200
13.4动手练:小熊打车201
第14章英汉词典202
14.1搭建项目框架202
14.2词典排序功能204
14.2.1冒泡排序204
14.2.2选择排序206
14.2.3插入排序207
14.2.4快速排序209
14.2.5词典排序211
14.3词典查询功能212
14.3.1顺序查找213
14.3.2二分查找214
14.3.3词典查询216
14.4新增词条功能216
第15章企鹅走迷宫218
15.1迷宫简介218
15.2迷宫界面219
15.2.1二维数组220
15.2.2迷宫数据结构221
15.2.3加载迷宫地图221
15.2.4构建迷宫外形224
15.3迷宫寻路226
15.3.1算法策略简介226
15.3.2迷宫算法分析228
15.3.3迷宫算法实现230
|
內容試閱:
|
Scratch是由MIT媒体实验室为青少年开发的图形化编程工具,已被翻译成70 种以上的语言,在超过 150 个国家和地区被广泛使用。就像玩乐高积木一样,使用Scratch编程简单而有趣。只要用鼠标从140多个不同功能的指令积木中选择和拖曳,把不同的指令积木按照某种逻辑关系拼搭在一起,就能得到一个可运行的程序,从而创建出各种交互式故事、动画、游戏、音乐和美术作品等。
Scratch能够与数学、物理、语文等众多学科融合在一起,对青少年的学习有着非常大的帮助。例如,在Scratch中,不仅能接触到基本的算术运算、关系运算和逻辑运算,还能接触到平面直角坐标系、绝对值、平方根、三角函数等初等数学知识。毋庸置疑,游戏总是能够吸引青少年的注意力。用Scratch编写不同类型、不同复杂度的游戏时,需要适当地运用不同的数学知识来设计游戏的算法。例如,通过圆的参数方程来控制角色作圆周运动,通过抛物线方程来模拟炮弹的运动轨迹,等等。在游戏的驱动下,这些数学知识将不再枯燥乏味,将会驱使青少年主动探究这些在游戏程序中发挥关键作用的秘笈。通过玩中学,能够激发青少年主动学习和运用各个学科的知识。
学习Scratch编程最大的益处就是能够激发青少年的创造力。Scratch简单易用且功能强大,能快速地将青少年的创意落地,变成一个个交互感极强的作品。在动手创作的过程中,根据项目的不同,需要融合Science(科学)、Technology(技术)、Engineering(工程)、Arts(艺术)、Mathematics(数学)等多个领域的知识。例如,对于一个稍复杂的游戏项目,就需要策划、美工、编程等不同角色的人员参与组成一个开发小组,以团队协作方式共同创作项目。可以说,Scratch编程是近年来流行的STEAM教育理念的一个极佳实践方式。
本书分为基础编程篇、图形编程篇和进阶编程篇3个部分。
第1部分讲授Scratch基础编程知识,介绍如何使用Scratch编辑器开发项目,如何使用变量、运算符、列表和过程等进行编程,如何使用流程图描述算法和进行结构化程序设计,等等。该部分提供丰富多彩的趣味数学案例,有韩信点兵、鸡兔同笼、数字黑洞、约瑟夫环、逻辑推理
第2部分讲授Scratch图形编程知识,介绍如何控制角色在舞台上运动和进行碰撞侦测,如何更改角色的外观和创建各种特效,如何播放声音和模拟乐器演奏,如何使用画笔和图章在舞台上绘制图形和图案,等等。本部分以一个汇集诸多图形编程技术的海底探险趣味游戏贯穿各章,还引导读者创作电子相册、巡线甲虫、手势抓蝴蝶、种蘑菇、模拟乐器等趣味小游戏。第3部分讲授Scratch进阶编程知识,介绍如何使用克隆功能和消息机制简化程序开发,如何编写和组织规模较大或功能复杂的应用程序项目,以及面向对象程序设计和事件驱动编程思想等。此外,还通过英汉词典和走迷宫项目介绍常用算法和数据结构的应用。
本书中的程序基于Scratch 2.0(版本号为v458.0.1)编写,所有范例程序均已调试通过。读者可以关注微信公众号小海豚科学馆获取本书的范例程序文件和素材,还可以加入本书的官方QQ群126170677获取学习资源,并可与本书编著者和网友进行在线交流。
本书假设读者从未接触过编程,从零基础开始介绍Scratch编程知识,帮助读者逐步建立起Scratch编程的知识体系,适合对编程有兴趣的青少年阅读,也适合希望辅导孩子进行编程训练的家长和少儿编程培训机构的教师使用。
由于水平所限,本书难免有疏漏或不妥之处,还请读者朋友不吝赐教。
谢声涛
2018年3月
|
|