【五一创作】Scratch资料袋

news2024/11/29 6:39:14

 Scratch软件是免费的、免费的、免费的。任何需要花钱才能下载Scratch软件的全是骗子。

1、什么是Scratch

Scratch是麻省理工学院的“终身幼儿园团队”开发的一种图形化编程工具。是面向青少年的一款模块化,积木化、可视化的编程语言。

什么是模块化、积木化?

我们看一下传统编程语言的代码,如下图:

再来看一下Scratch的代码,如下图:

传统编程语言是主要是由英文字母构成的。Scratch是一个一个的模块,每一个模块就是一行代码,各个模块像积木一样拼接起来。所以叫模块化,积木化的编程语言。他的优点就是使用者不需要懂英文单词,甚至不用打字。使用鼠标进行拖拽进行编码。极大的简化了编程语言,降低了使用难度。

什么是可视化?如下图:

功夫熊猫

我们编写的代码效果随时可以在右边的舞台区到,我们也是对右边舞台区的角色或背景编程,编程的结果非常直观。

2、Scratch的版本

Scratch有三个大的版本,1.4版,2.0版,3.0版

1.4版本:用Smalltalk开发。(我也不知道这是个什么东西)。生成文件后缀名为sb

2.0版本:用Flash及ActionScript。(Flash是一个多媒体软件平台,在世纪初的时候非常火爆,都用来做小游戏和小动画,随着技术的发展,现在有很多局限性。ActionScript是Flash平台下的脚本语言,主要用于实现功能)。生成文件后缀名为sb2

3.0版本:用H5及JavaScript开发,H5用于界面制作,JavaScript用于功能开发。现在有一些少儿编程机构也会教JavaScript。生成文件后缀名为sb3

说明1:Scratch软件是用Smalltalk、Flash、ActionScript、H5、JavaScript开发的。并不是孩子要用这些语言开发,孩子就是用Scratch里的脚本语言开发。

说明2:上面三个版本是统称,并不是某一个版本,比如:3.5版本,3.18版本,3.21版本统称3.0版本。

Scratch有windows及mac版本可供下载

Scratch安装包

3、Scratch的设计思路

简单!!!非常简单!!!为了让儿童能快速上手,Scratch设计的超级简单。菜单栏设计的超级简单,只有语言、文件、编辑三个选项。对于儿童来说,可以非常快的上手学习,对于成年人来说,很多地方一看便知。

传统编程语言配置环境,安装插件就得几个小时。Scratch直接下一步、下一步,会用电脑的就会用Scratch。

Scratch界面支持中文、英文等几十种语言。

4、Scratch模块

Scratch一共有九个模块:运动、外观、声音、事件、控制、侦测、运算、变量、自制积木,包含了绝大多数传统编程语言拥有的代码。可以做出功能非常丰富的产品。

5、Scratch扩展:音乐、画笔、视频侦测、文字朗读、翻译、Makey Makey、micro:bit、LEGO MINDSTORMS EV3、LEGO BOOST、LEGO Education WeDo 2.0、Go Direct Force&Acceleration。扩展有些是直接可用的,有些是需要硬件的,有些是需要连接外网的。

6、Scratch优点

Scratch是现在用户最多、免费资源最丰富的少儿编程软件,没有之一。Scratch是开源的,他的源代码可以在Github上下载到。现在绝大多数的类似软件,都是在Scratch源码的基础上修改的。

网上很多培训机构的话术是少儿编程能提高学习能力、创造力、逻辑思维能力、建立自信心、专注力等。我觉得,少儿编程和其它学科相比最大的优点是“好玩”,玩是孩子的天性,少年儿童能通过简单的拖拽,制作出故事,动画、游戏。极大了满足了孩子玩的欲望,玩的过程中学到了很多知识。与其看动画片,不如玩编程。看动画只有输入,没有输出,玩Scratch可以通过学习,创造出自己喜欢的东西。还能跟自己创造出来的小游戏互动,甚至分享给同学、朋友。

7、Scratch很难

前面说过,Scratch非常简单,但不影响他功能的丰富,Scratch拥有非常多的传统编程语言的语法和概念。比如:“重复”对应传统编程语言的for循环,“如果”对应if判断语句,自制积木对应传统编程语言的方法,角色对应类,角色属性对应属性,甚至变量和列表的名字和传统编程语言都是一样的。Scratch可以用几行代码做出一个简单的游戏,也可以用几百几千行代码做出相对复杂的游戏,比如:植物大战僵尸,五子棋等。Scratch也可以写出各种算法,比如查找:顺序查找、折半查找。比如排序:插入排序、 冒泡排序、 选择排序、 快速排序、归并排序。这些算法在传统编程语言中也不算非常简单。再难点可以刷力扣(一个专门写算法的一个网站)上的题。在科学的课程体系及专业老师的教导下,Scratch可以超级强大!

Scratch功能是有限的,能做出来的东西是无限的。

8、Scratch和其它学科的关联

Scratch和其它学科都有关联,孩子要想好好玩Scratch,就需要自己去学习其它学科的相关知识。

首先,也是最重要的,编程,这个就不细讲了。Scratch本来就是一个编程软件。

声音:Scratch可以播放声音、录制声音。其中涉及到了相关知识有音调、音量等。

数学:Scratch可以进行数学运算。涉及到相关知识有:加、减、乘、除、随机、大于、小于、等于、逻辑运算(与或非,这个在传统编程中使用的及其普遍)、取余、四舍五入、绝对值、向上(下)取整、平方根、sin、cos、tan、asin、acos、atan、ln、log、e^、10^等小学到初中非常多的数学知识,孩子们可以通过简单的数学知识做出简单的效果和功能,如果想做出更厉害的功能,就会促使孩子自己主动去学习。孩子可以通过圆的相关知识自己去计算π,用Scratch可以比先贤祖冲之计算的更精确。也可以解决一些经典的数学问题,比如:鸡兔同笼、李白沽酒等。

音乐:Scratch可以模仿各种乐器的声音,根据音符、节拍等基础的音乐知识,可以创造出简单或复杂的音乐效果。

色彩:画笔功能提供了丰富的关于色彩的知识,可以画出各种优美的图案,根据相关数学知识,可以画出各种形状。

物理:Scratch可以模仿重力、模仿光的反射

9、不要神化Scratch,Scratch是一款非常棒的学习软件,Scratch只是学习用的,虽然能开发出非常复杂非常丰富的游戏和功能,但也改变不了他是一种学习软件的事实。Scratch与Python,Java,C,C++等传统开发语言不是一个层次的东西,传统开发语言是学习工具,更重要的是生产工具,传统编程语言开发出的产品可以供非常多的人使用,可以便捷我们的生活,可以卖钱。Scratch只能是学习用的。

10、Scratch和传统编程语言区别

Scratch与Python,C,C++等传统编程语言有什么区别?怎么选择?

开发目的不同,Scratch是学习工具,是用来学习的。传统编程语言虽然也能学习,但主要还是开发工具,是用来创造软件产品的。

功能不同,Scratch拥有所有传统编程语言的基本语法,循环语句,判断语句,顺序执行,方法等,但很多高级语法是没有的,比如:接口,虚方法,重载……

学习方式不同:Scratch入门几乎零基础,会用鼠标,知道电脑基本操作就能学。传统编程语言有比较高的门槛。

我建议低年纪(小学、初中)同学学Scratch,高年级(初中、高中)同学学Python,C等传统编程语言。

11、Scratch和其它少儿编程语言怎么选择

其它少儿编程语言大多都是在Scratch的基础上进行的扩展,当然也有一部分自主研发的,都是基于模块化,积木式的编程语言。他们会比Scratch功能更强大一些,扩展会更多一点。Scratch因为用户多,所以会有相关的考试,比如:电子学会的图形化考试,蓝桥杯等。其它少儿编程语言因为用户比较少,所以没有形成一个比较统一的评判标准。这里我说的少儿编程语言是指软件编程,不包括乐高、机器人等硬件编程。对于硬件编程我个人不了解,不做评判。

12、Scratch教程

我是专业的程序员,做开发多年。接触Scratch之后觉得挺有意思,就自己学了一下。看过非常多的前辈们的教程,发现有些教程不全,有些不成体系,当然也有非常好的教程值得借鉴。因此,萌生了自己做一套最全,最完备,最成体系的教程的想法,供孩子、家长及老师们一起学习。

能力一般、水平也有限,如果大家觉得喜欢,也是站在前辈们的肩膀上。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/474102.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【VM服务管家】VM4.x算子SDK开发_3.1 环境配置类

目录 3.1.1 环境配置:CSharp算子SDK开发环境配置方法3.1.2 算子封装:使用C封装算子SDK的方法3.1.3 异常中断:算子SDK软件运行报错“托管调试助手”中断的解决方法3.1.4 深度学习:GPU运行深度学习算子引发StackOverFlow异常的方法 …

FP独立站推广成本太高?那是因为你没看到这篇!

近年来,越来越多的商家开始搭建自己的跨境电商独立站,做起了FP独立站。那么用独立站做FP到底有什么优势?还有,推广成本真的很高吗?今天这期就给大家扒一扒。 用独立站做FP的优势 1、塑造品牌,扩大经营触及…

【HarmonyOS】元服务WebView组件 H5使用localstorage

在日常开发中我们会在应用种接入H5网页,localStorage作为H5本地存储web storage特性的API之一,主要作用是将数据保存在客户端中。对于快速开发元服务,通过WebView组件运行H5如何使用localstorage呢?下文以API7 JavaUI为例为大家做…

k8s 集群搭建详细教程

参考: Kubernetes 文档 / 入门 / 生产环境 / 使用部署工具安装 Kubernetes / 使用 kubeadm 引导集群 / 安装 kubeadm B. 准备开始 一台兼容的 Linux 主机。Kubernetes 项目为基于 Debian 和 Red Hat 的 Linux 发行版以及一些不提供包管理器的发行版提供通用的指令每…

3.3 Linux shell命令(权限、输入输出)

目录 shell shell概述 shell分类 查看当前系统的shell 权限相关命令(也是shell命令) 基本命令 输入输出相关操作 输出命令 输入输出重定向 通配符 管道 历史查询、补齐功能 历史查询 自动补齐 命令置换 shell 什么是shell shell是一种负…

【VM服务管家】VM4.0软件使用_1.2 工具类

目录 1.2.1 文本保存:逐行保存格式化模块输出的方法1.2.2 脚本模块:循环模块搭配脚本使用的方法1.2.3 几何查找:彩色图像的几何查找方法1.2.4 深度学习:图像分割的面积的获取方法1.2.5 颜色识别:使用颜色识别工具做分类…

【Leetcode -86.分隔链表 -92.反转链表Ⅱ】

Leetcode Leetcode -86.分隔链表Leetcode -92.反转链表Ⅱ Leetcode -86.分隔链表 题目:给你一个链表的头节点 head 和一个特定值 x ,请你对链表进行分隔,使得所有 小于 x 的节点都出现在 大于或等于 x 的节点之前。 你应当 保留 两个分区中每…

java数据结构之HashMap

目录 前言 1、初始化 1.1、初始化 1.2、插入第一条数据 2、数组 链表 2.1、插入数据:没有hash冲突 2.2、插入数据:Key不同,但产生hash冲突 2.3、插入数据:Key相同 3、数组 红黑树 3.1、链表如何转化为红黑树? 3.…

Postman测试实践笔记

Postman测试实践 文章目录 Postman测试实践一、Postman安装与使用1.1 Postman下载及安装1.1.2 Postman Mac版 1.2 Postman 更新1.2.1 mac 版更新 1.3 Postman 其他问题 二、网络相关知识2.1 接口2.1.1 软件为什么需要接口 2.2 接口测试2.2.1 什么是接口测试:2.2.2 为…

VTK下载并安装

去官网下载https://vtk.org/download/ 选择最新稳定版本 然后点击source后边的压缩包进行下载。 下载完成后将其解压到特定的文件夹下,然后打开cmake-gui.exe,第一行选择刚刚解压的文件夹,这个文件夹下有一个CMakeLists.txt文件&#xff0c…

【6. 激光雷达接入ROS】

欢迎大家阅读2345VOR的博客【6. 激光雷达接入ROS】🥳🥳🥳 2345VOR鹏鹏主页: 已获得CSDN《嵌入式领域优质创作者》称号👻👻👻,座右铭:脚踏实地,仰望星空&#…

Go | 一分钟掌握Go | 8 - 并发

作者:Mars酱 声明:本文章由Mars酱编写,部分内容来源于网络,如有疑问请联系本人。 转载:欢迎转载,转载前先请联系我! 前言 当今编程界,一个好的编译型语言如果不支持并发&#xff0c…

工控老司机告诉你热电偶和RTD的区别

热电偶和热电阻都是温度传感器,但它们的原理、功能特性和应用场景有所不同。 一、原理区别 首先,热电偶是利用两种不同金属之间的热电效应来测量温度的。其原理是利用温度差引起的金属之间的热电势差进行测量。两种金属之间存在一种热电势(…

Yolov8优化:卷积变体---分布移位卷积(DSConv),提高卷积层的内存效率和速度

论文: https://arxiv.org/pdf/1901.01928v1.pdf 摘要:提出了一种卷积的变体,称为DSConv(分布偏移卷积),其可以容易地替换进标准神经网络体系结构并且实现较低的存储器使用和较高的计算速度。 DSConv将传统的卷积内核分解为两个组件:可变量化内核(VQK)和分布偏移。 通过…

双亲委派机制的原理和作用

双亲委派机制,就必须弄清楚Java的类加载器。 什么是类加载器 Java类加载器(ClassLoader)是Java运行时环境(JRE)的一部分,负责动态的将Java类加载到Java虚拟机的内存空间。 类加载器有哪些 主要有三个: 引导类加载器(Bootstrap ClassLoade…

前端开发在本地开发与后台进行联调阶段时,接口自动重定向https、HSTS 与 307 状态码

开发者在本地开发与后台进行联调阶段时,Chrome 浏览器上出现 307 状态码,并跳转到 https 版 但是 307 代码是什么含义呢?页面又为何会出现 307 状态码呢?我之前都没见过这个状态码,查了才知道原来它也是一种重定向。 …

数字三角形+包子凑数(蓝桥杯JAVA解法)

数字三角形:用户登录 题目描述 上图给出了一个数字三角形。从三角形的顶部到底部有很多条不同的路径。对于每条路径,把路径上面的数加起来可以得到一个和,你的任务就是找到最大的和(路径上的每一步只可沿左斜线向下或右斜线向下走…

ArduPilot之开源代码Sensor Drivers设计

ArduPilot之开源代码Sensor Drivers设计 1. 源由2. Sensor Drivers设计2.1 front-end / back-end分层2.2 设计思想分析 3 实例理解3.1 驱动初始化3.2 业务应用代码3.3 frond-end代码3.3 back-end代码3.3.1 UART3.3.2 I2C3.3.3 SPI 4. 参考资料 1. 源由 飞控代码除了最为基础的…

《美团机器学习实践》读后感和一点思考

前言:最近拜读了美团算法团队出品的《美团机器学习实践》,这本书写于2018年,一个大模型还没有标配的时代。这本书侧重于工业界的实践,能清楚地让我们了解到工业界和学术界对机器学习的关注方向上的差异,值得一读。因为…

文件系统和软硬链接

文章目录 一.文件系统1.了解磁盘的物理结构2.磁盘的存储结构a.磁盘读取 3.磁盘的逻辑结构a.为什么操作系统不直接使用CHS地址?b.实际IO一次的大小 4.磁盘的分区管理4.1.ext文件系统a.文件查找b.文件删除 4.2目录的属性和数据 二.软硬链接软链接的建立和删除软链接的…