Scratch零基础起步攻略(一)
通常,类似这样的文章开头总要阐述一大段关于编程的重要性,还有自己的专业性、权威性等等,我就都省掉了……
简单介绍一下自己,从事计算机编程教育前前后后有近20年了,面对了不同年龄层次的学员,大部分跟着我爱上了编程,即便没有从事专业的编程工作,但仍然觉得编程是门不错的手艺。
Scratch是个很神奇的编程平台,最新推出的3.0版本是一个基于HTML5开发的全平台通用的积木式编程平台,只要有一台支持HTML5的浏览器,就可以用。至于它有多厉害,我们一边学一边体会吧。
今天,我们要接触的第一堂课就简单带领大家认识一下Scratch(3.0)的界面以及基础的控制机理。贪多嚼不烂,我们这就开始吧!
在正式开课前,我们先要把编程的环境搭建好,这里有两种方法,第一种,去Scratch官方网站下载页面(https://scratch.mit.edu/download)直接下载客户端,目前版本为1.2.1;第二种,去一些在线编程平台,比如网易卡搭编程(https://kada.163.com/)等登录之后可以直接在线编写。
好了,环境搭建好之后,让我们赶快打开编辑器吧。
(本教程以离线版作为课程讲解,在线版可实现相同功能。)
首先看到的都是一个类似这样的界面。(如图1)

图1
在这里我把它简单的分为三个部分,红色的菜单区,绿色的代码区,蓝色的造型区。下面我们分别来说一下。
菜单区
菜单区中包含上下两行指令行:
上面那一行主要是大家经常会见到的文件操作(新建、打开、保存等功能),地球仪图标可用来修改语言,编辑操作中有加速模式,这一行的功能我们就先这样简单说一下;
下面一行的功能分为左中右三部分,左边部分里的代码、造型、声音三个分页栏分别是用来切换绿色代码区功能页面的;中间部分的绿旗和红色停止按钮分别是用来启动和停止项目运行的;右边的窗口布局调整对应了三种窗口布局模式。
代码区
虽说代码区其实还包含了造型编辑和声音编辑的功能,但大部分时间我们还是用到了代码编辑的功能,所以这里我们就以“代码区”来称呼它了。
代码区从左到右分布的三块空间,最左边最窄的部分叫做功能区,它使用了若干种不同的颜色来区分其功能;中间的部分叫做积木区,我们编写Scratch程序时用到的就是各种功能的积木,如果在功能区选择不同的功能,就可以改变积木区中的积木,我们会发现每个积木区的积木块颜色都跟功能区的颜色保持一致,这也是我们以后编写程序时使用颜色就可以对功能做出判断的关键;最右边的这片很大的区域,是代码编辑区,我们的代码就要在这片区域中进行编写。
造型区
造型区里我们分为上面的展示区和下面左侧的角色信息区和右边的舞台信息区。
展示区是我们在运行程序后,能直接看到程序运行结果的地方;角色信息区会罗列出当前所有的角色,选中某一个角色后就可以针对它进行编程,同时还可以对它进行相关的设置;舞台信息区则是会罗列出所有的舞台,选中某一个舞台时,也可以对这个舞台进行编程哦!
好了,大致了解了Scratch的界面布局,那我们可以开始编程了吗?当然,这是没问题的,不过我还是要简单说明一下Scratch是如何运行起来的。
Scratch的运行以“绿旗”为启动标志,所有的角色代码里,如果有下面这个绿旗启动标志(如图2),那么在我们点下菜单区的绿旗按钮时,角色的绿旗启动标志下的积木代码快将会被逐条运行,直至其全部运行完毕时整个程序终止。

图2
好了,这节课,我们主要认识了一些Scratch的界面和运行机理,内容不多,甚至都没有开始正式的编程,但不要着急,好的开始是成功的一半,我们基础打得越牢靠,日后才会有更大的进步。
Scratch零基础起步攻略(一)的更多相关文章
- Groovy脚本基础全攻略
1 背景 Groovy脚本基于Java且拓展了Java,所以从某种程度来说掌握Java是学习Groovy的前提,故本文适用于不熟悉Groovy却想快速得到Groovy核心基础干货的Java开发者(注意 ...
- javase基础复习攻略《十》
按照计划本篇为大家总结JAVA的网络编程,什么叫网络编程呢?网络编程!=网站编程,对于这一点大家一定要注意,很多小朋友都曾经这么认为.既然谈到网络编程,咱们先了解一下网络的基础知识,什么是计算机网络? ...
- javase基础复习攻略《九》
本篇将为大家总结JAVA中的线程机制,谈到线程,大家一定会问线程和进程有什么区别?刚接触进程时我也有这样的疑问,今天就为大家简单介绍一下进程和线程.进程(Process)是计算机中的程序关于某数据集合 ...
- javase基础复习攻略《五》
总结完JAVA的基础语法和面向对象思想后,今天为大家补充一下JAVA中的数组,数组是什么呢?大家是不是想到了集合,数组和集合有相似之处,集合中的数据无序,不可以重复.数组中则存放着具有相同特征的一组数 ...
- javase基础复习攻略《二》
今天就开始的真正走进JAVASE的世界,本篇介绍的是:JAVASE基础语法,大家如果有C语言的基础,对于本节内容一定感觉非常轻松,编程语言之间的都是相通的,只不过C语言属于面向过程编程,而JAVA语言 ...
- javase基础复习攻略《一》
作为一名软件工程专业,JAVA开发方向的大三本科学生,有必要把自己的学到的专业知识进行一下整理,一则方便自己了解自己的学习程度,二则帮助刚刚接触这一门语言的童鞋了解学习,本人来自与河南理工大学,介绍完 ...
- Python基础练级攻略:day01
如果你有足够长时间做某事,一定会更擅长. 知识点: 计算机基础 变量 运算符 if语句 for-in循环 函数 列表.元组.字典.字符串.集合 ascii.unicode.utf-8.gbk 区别 A ...
- Gradle脚本基础全攻略
http://blog.csdn.net/yanbober/article/details/49314255
- javase基础复习攻略《八》
进入第八篇,我们开始讨论JAVA的IO初步.在JAVA程序中,对数据的输入\输出操作以"流"(stream)方式进行,J2SDK提供了各种各样的"流"类,用于获 ...
随机推荐
- win10下Python安装pycrypto报错
错误一: error: Microsoft Visual C++ 14.0 is required. 解决办法: 下载Visual C++2017安装包,下载链接:Visual C++ 2017 安 ...
- useState 的介绍和多状态声明(二)
useState的介绍 useState是react自带的一个hook函数,它的作用是用来声明状态变量. 那我们从三个方面来看useState的用法,分别是声明.读取.使用(修改).这三个方面掌握了, ...
- vuejs2从入门到精通视频教程
https://www.cnblogs.com/web-666/p/8648607.html 一.基础部分 0.课件 1.介绍 2.vue实例 3.模板语法 4.计算属性和观察者 5.Class与St ...
- Faster async functions and promises
https://v8.dev/blog/fast-async async function computeAnswer() { return 42;}undefinedconst p = comput ...
- peomethues 参数设置 监控网站 /usr/local/prometheus-2.13.0.linux-amd64/prometheus --config.file=/usr/local/prometheus-2.13.0.linux-amd64/prometheus.yml --web.listen-address=:9999 --web.enable-lifecycle
probe_http_status_code{instance="xxxx",job="web_status"} probe_http_status_code{ ...
- 006 认识BeanNameAware
在看Spring的生命周期,就要注意到Spring Aware,Aware是什么,在这篇文章中,主要是说明三个部分,Spring的生命周期[这个在后面会继续说明,这里这是一个大纲],然后说明Sprin ...
- 泡泡一分钟:Semi-Dense Visual-Inertial Odometry and Mapping for Quadrotors with SWAP Constraints
张宁 Semi-Dense Visual-Inertial Odometry and Mapping for Quadrotors with SWAP Constraints 具有SWAP约束的四旋翼 ...
- dapperHelper
public class DapperHelper { /// 数据库连接名 private static string _connection = string.Empty; /// 获取连接名 p ...
- 安卓 android studio 报错 WARNING: Configuration 'compile' is obsolete and has been replaced with 'implementation' and
报错截图: 问题原因:compile会被在2018年底取消,会被imlementation替代,所以会报这个警告,解决警告的方式就是换成 imlementation 就好了 解决方法: 在 app 的 ...
- 报错:java.lang.AbstractMethodError: nl.techop.kafka.KafkaHttpMetricsReporter.logger()Lcom/typesafe/scalalogging/Logger;
报错背景: CDH启动kafka的时候出现报错情况,并且报错的节点挂掉. 报错现象: Exiting Kafka due to fatal exception java.lang.AbstractMe ...