一、模块
1)运动模块
运动模块中包含移动和转向的操作,可将角色移动到舞台某一个具体的点,或者旋转到某一个特定的方向。
在Scratch中0是向上,90°是向右,180°是向下,-90°是向左。
2)画笔模块
通过设置画笔,可以观察到角色在移动时的轨迹。
当画笔状态是落下时,那么角色移动时就会按照画笔的属性(颜色、大小、色度)绘出轨迹。
3)外观模块
在外观模块中,不但可以为让角色说话或思考,还能给角色的造型和背景添加各种图形特效,如旋转、超广角镜头、虚像等。不仅如此,还能设置角色的可视状态和所在图层。
4)声音模块
在声音模块中不仅能使用内置的音效,控制音量、设定节奏等,还能自己创作音乐。只需指定乐器(即音色),设定音调和拍数,就能演奏各类音乐作品,例如儿歌、流行歌曲等。
5)消息广播机制
消息广播存在于事件模块中,该机制可让多角色的脚本协调一致地执行。广播的消息会发给所有角色(包括当前广播的角色),当角色接收到的消息名称和广播的消息名称相同时,就触发相应的动作。
6)侦测
侦测模块用于检测坐标、颜色或时间等信息是否符合指定的要求。这些积木无法独立使用,需要与控制模块中的判断语句或者运算符模块中的比较语句配合使用。
二、编程概念
1)分而治之
分而治之是一种编程思想,当一个问题很大很复杂时,就可将该问题分解成许多小的问题,然后分别解决并独立地测试每一个子问题,最后将这些子问题整合在一起,从而解决最初的问题。在更多模块中即可自定义积木,它和各种积木一样都可以卡合到脚本中,但内部的逻辑可以根据实际情况编写。
2)数据类型
从某个角度讲,应用程序的任务是处理各种数据类型(如数字、文本、图像等)的数据并生成有价值的信息。Scratch支持3种数据类型:布尔、数字和字符串。布尔类型仅有两个:true和false;数字类型可以是整数或小数;字符串类型是一系列字符的集合,字符包括(大写或小写)字母、数字以及符号(如+-&@等),它可以存储姓名、地址、电话号码、标题等信息。
参数凹槽共有3种形状:六边形(布尔)、矩形(字符串)和圆角矩形(数字)。
功能积木的外观只有两种形状:六边形和圆角矩形。每一种形状都和数据类型有关,而圆角矩形既可以代表数字类型,也可以代表字符串类型。
3)变量和链表
变量是被命名的计算机内存区域。把变量想象成一个盒子,程序随时都能存放盒子中的数据(数字和文本)。变量一个重要的用法是存储算术表达式的结果,从而方便脚本随后使用。例如要计算2+4+5的结果,可以先计算2+4得到6,并记住这个结果,然后用5加上之前的结果,并得出最终结果11。
在数据模块中,可以创建变量。变量可以存储任意类型的值,Scratch会根据上下文自动转换数据类型。
链表(编辑器中翻译为列表)是存放许多变量的一个容器,可以存储或者获得容器中的每一个变量的值。就像有许多梳妆台一样,每一个抽屉都存放着物品。动态链表,能在程序运行时动态地增减内部变量;数字链表,由纯数字变量构成的链表,用于找出最大值、最小值、计算平均数等。链表的创建同样也在数据模块中。
4)运算
在运算模块中,除了可以加减乘除之外,还包括比较运算符和逻辑运算符。比较运算符可比较两个变量或表达式的大小关系,即大于、小于或等于。逻辑运算符包括且、或以及否定:
且:有两个参数,如果两个参数均为true,且的结果才为true。
或:有两个参数,若任何一个参数为真,或操作符则返回真;仅当两个参数均为false时,才返回假。
否定:只有一个输入参数,当参数为真时,结果为假。
5)循环
循环告诉计算机重复地执行一条或多条语句。最简单的循环是确定型循环,它以特定的次数重复一系列语句。除了指定重复次数之外,有时还表现为使用循环计数器进行控制。
在于控制模块中,Scratch支持3种类型的循环:无限循环,用条件语句控制的不确定型循环。