SCRATCH编程从入门到精通

SCRATCH编程从入门到精通
作者: 编者:谢声涛
出版社: 清华大学
原售价: 89.00
折扣价: 63.30
折扣购买: SCRATCH编程从入门到精通
ISBN: 9787302508373

作者简介

谢声涛,小海豚科学馆创始人,致力于线下和线上推广青少年科普教育和编程教育。曾在多家互联网公司工作,历任程序员、研发经理、架构师、技术总监等职,熟悉大规模网站架构设计,擅长复杂应用系统开发,在海量数据管理、搜索引擎技术等应用方面有丰富经验。

内容简介

第1章编 程 起 步 欢迎走进Scratch编程的奇妙世界,从这里开始,本书将向没有编程基础的读者讲授如何使用Scratch编写应用程序。这一章将向初学者讲授学习本书其余部分内容需要掌握的一些基本概念和基础知识。 什么是编程?什么是Scratch编程?Scratch积木式编程具有哪些优势?Scratch编程语言的指令系统是怎样的?读者将在阅读本章的过程中找到这些问题的答案。同时,通过对本章的学习,读者将学会如何选择Scratch开发环境,学会安装Scratch离线编辑器和设置语言环境、字体大小等。之后,我们将手把手地教读者使用Scratch编辑器开发自己的应用程序项目,通过简单的临摹案例让读者快速熟悉Scratch开发环境和编程方法,为后续的学习作铺垫。此外,如果读者打算以后学**种**语言(如Python、C/C++等),可参考本章给出的从Scratch到Python等**语言的学习路径的建议进行学习。 本章包括以下主要内容。 ◇ 介绍Scratch编程的特点、主要版本和项目构成等。 ◇ 准备Scratch开发环境和设置编辑器的语言环境、字体大小等。 ◇ 介绍Scratch编辑器界面的主要组成部分及其功能说明。 ◇ 介绍Scratch指令系统和指令积木的特点、*作方法、功能类别等。 ◇ 以临摹方式创作“韩信点兵”和“星际飞行”项目。 〖1〗1.1Scratch编程概述〖1〗1.1.1为什么用Scratch编程 在世界上**台电子计算机ENIAC诞生后,各种编程语言陆续被计算机科学家创造出来。人们通过编程语言能够高效地与计算机系统进行交流,控制计算机按照人们的意愿进行工作。经过不断地发展和完善,一些编程语言与人类的自然语言和数学语言越来越接近,它们被称为**语言,比如C、C++、J**a和Python等就是全世界较为流行的**语言。 为了利用计算机进行工作,人们使用某种编程语言将解决问题的方法和步骤描述成计算机能够理解和执行的一系列指令,这些指令的集合叫作计算机程序(简称程序,也叫作脚本),这个过程叫作编写程序(简称编程)。〖1〗Scratch编程从入门到精通〖1〗第1章编程起步如图111所示,这是一个使用C语言编写的计算三角形面积的示例程序。从中可以看到,C语言使用英文字符来描述程序的指令(也叫作代码),其他**语言也是如此。这是由于美国在早期计算机工业的发展中处于主要地位,因此一般的**语言都是以英语为蓝本进行设计的。 我们还看到在这个C语言程序中,每一行代码都以一个分号结束。如果某一行代码末尾缺少一个分号,那么这个程序在编译时就会出现语法错误。如图112所示,这是在某个IDE环境中编译时因缺少分号而提示的错误信息。 图111计算三角形面积的C语言程序 图112编译C语言程序时缺少分号出现的错误信息 和C语言类似,其他**语言也都有着严格的语法要求和各种编程规则。如果我们编写的程序没有遵守这些“金科玉律”,那么,轻则会收到错误或警告信息,重则可能导致计算机系统宕机。因此,在实际工作中进行编程需要经过专门的学习和训练,由专业程序员负责第1章编 程 起 步 欢迎走进Scratch编程的奇妙世界,从这里开始,本书将向没有编程基础的读者讲授如何使用Scratch编写应用程序。这一章将向初学者讲授学习本书其余部分内容需要掌握的一些基本概念和基础知识。 什么是编程?什么是Scratch编程?Scratch积木式编程具有哪些优势?Scratch编程语言的指令系统是怎样的?读者将在阅读本章的过程中找到这些问题的答案。同时,通过对本章的学习,读者将学会如何选择Scratch开发环境,学会安装Scratch离线编辑器和设置语言环境、字体大小等。之后,我们将手把手地教读者使用Scratch编辑器开发自己的应用程序项目,通过简单的临摹案例让读者快速熟悉Scratch开发环境和编程方法,为后续的学习作铺垫。此外,如果读者打算以后学**种**语言(如Python、C/C++等),可参考本章给出的从Scratch到Python等**语言的学习路径的建议进行学习。 本章包括以下主要内容。 ◇ 介绍Scratch编程的特点、主要版本和项目构成等。 ◇ 准备Scratch开发环境和设置编辑器的语言环境、字体大小等。 ◇ 介绍Scratch编辑器界面的主要组成部分及其功能说明。 ◇ 介绍Scratch指令系统和指令积木的特点、*作方法、功能类别等。 ◇ 以临摹方式创作“韩信点兵”和“星际飞行”项目。 〖1〗1.1Scratch编程概述〖1〗1.1.1为什么用Scratch编程 在世界上**台电子计算机ENIAC诞生后,各种编程语言陆续被计算机科学家创造出来。人们通过编程语言能够高效地与计算机系统进行交流,控制计算机按照人们的意愿进行工作。经过不断地发展和完善,一些编程语言与人类的自然语言和数学语言越来越接近,它们被称为**语言,比如C、C++、J**a和Python等就是全世界较为流行的**语言。 为了利用计算机进行工作,人们使用某种编程语言将解决问题的方法和步骤描述成计算机能够理解和执行的一系列指令,这些指令的集合叫作计算机程序(简称程序,也叫作脚本),这个过程叫作编写程序(简称编程)。〖1〗Scratch编程从入门到精通〖1〗第1章编程起步如图111所示,这是一个使用C语言编写的计算三角形面积的示例程序。从中可以看到,C语言使用英文字符来描述程序的指令(也叫作代码),其他**语言也是如此。这是由于美国在早期计算机工业的发展中处于主要地位,因此一般的**语言都是以英语为蓝本进行设计的。 我们还看到在这个C语言程序中,每一行代码都以一个分号结束。如果某一行代码末尾缺少一个分号,那么这个程序在编译时就会出现语法错误。如图112所示,这是在某个IDE环境中编译时因缺少分号而提示的错误信息。 图111计算三角形面积的C语言程序 图112编译C语言程序时缺少分号出现的错误信息 和C语言类似,其他**语言也都有着严格的语法要求和各种编程规则。如果我们编写的程序没有遵守这些“金科玉律”,那么,轻则会收到错误或警告信息,重则可能导致计算机系统宕机。因此,在实际工作中进行编程需要经过专门的学习和训练,由专业程序员负责。 编程爱好者在学习C语言等编程语言时,一开始总是会遇到各种各样的麻烦和困难。尽管在计算机发展**,很早就出现了诸如BASIC这种专门给普通编程爱好者使用的编程语言,并且在青少年中也有一定的使用量,但是这类编程语言仍然有着严格的语法要求和编程规则,将许多初学者的编程热情浇灭在起步阶段。 近年来,随着**信息技术的飞速发展,专门为青少年开发的各种**语言不断涌现,其中以MIT Scratch为代表的图形化编程语言从中脱颖而出,逐渐成为**流行的、*适合对青少年进行编程教育的新一代编程语言。 如图113所示,这是使用MIT Scratch语言编写的计算三角形面积的两个程序脚本,它们分别是使用英文和中文进行描述的。这种使用Scratch编写的程序,由代表不同指令的积木块按照一定的逻辑关系组合而成。不需要背记复杂的语法规则,也不用担心程序会出现语法错误而无法运行,或者因为违反某些编程规则而导致程序崩溃。如此一来,就算是初学者也能将精力放在思考程序逻辑上,能够轻松地按照自己的意图选择不同功能的积木块,再将它们拼接组合成自己需要的程序。这种编写程序的方式充满了玩乐高积木般的乐趣。因此,Scratch在2007年一经推出,就像一团熊熊烈火,迅速点燃了**青少年的编程热情。。 编程爱好者在学习C语言等编程语言时,一开始总是会遇到各种各样的麻烦和困难。尽管在计算机发展**,很早就出现了诸如BASIC这种专门给普通编程爱好者使用的编程语言,并且在青少年中也有一定的使用量,但是这类编程语言仍然有着严格的语法要求和编程规则,将许多初学者的编程热情浇灭在起步阶段。 近年来,随着**信息技术的飞速发展,专门为青少年开发的各种**语言不断涌现,其中以MIT Scratch为代表的图形化编程语言从中脱颖而出,逐渐成为**流行的、*适合对青少年进行编程教育的新一代编程语言。 如图113所示,这是使用MIT Scratch语言编写的计算三角形面积的两个程序脚本,它们分别是使用英文和中文进行描述的。这种使用Scratch编写的程序,由代表不同指令的积木块按照一定的逻辑关系组合而成。不需要背记复杂的语法规则,也不用担心程序会出现语法错误而无法运行,或者因为违反某些编程规则而导致程序崩溃。如此一来,就算是初学者也能将精力放在思考程序逻辑上,能够轻松地按照自己的意图选择不同功能的积木块,再将它们拼接组合成自己需要的程序。这种编写程序的方式充满了玩乐高积木般的乐趣。因此,Scratch在2007年一经推出,就像一团熊熊烈火,迅速点燃了**青少年的编程热情。 "本书融合数学、游戏和算法,从零开始讲授编程概念,帮助初学者掌握编程思想和建立Scratch编程知识体系,为青少年提供一本从入门到精通的Scratch编程参考教材。 (1)数学编程 韩信点兵、*兔同笼、冰雹猜想、辗转相除法、卡普雷卡尔黑洞、逻辑推理、成语接龙、约瑟夫环…… (2)游戏编程 海底探险、电子相册、街舞表演、巡线甲虫、反弹球、手势抓蝴蝶、吹生*蜡烛、种蘑菇、乐器演奏…… (3)算法和数据结构 冒泡排序、选择排序、插入排序、快速排序、顺序查找、二分查找、回溯走迷宫、二维数组、队列和栈…… "