在 Scratch 中编写你的第一个算法

在本系列关于教孩子学习编程的文章中,了解如何开始使用 Scratch。
93 位读者喜欢这个。
A introduction to creating documents in LaTeX

Opensource.com

今年有更多孩子在家学习,让他们参与独特的学习机会非常重要。课堂看起来与以前大不相同,并且将继续发展。因此,我们教授的课程也应该如此。

在本系列的第一篇文章中,我分享了我的学生如何教我编程。在接下来的几周里,我将探讨教育工作者和家长如何利用编程的力量来教孩子各种各样的技能。

“但我对编程一窍不通!” 你可能会对着电脑大喊。这就是开源代码的<0xE2><0x80><0x89>魅力之一:每个人都是学习者,每个人都是老师。无论你是编程新手,还是已经从事编程一生,犯错都是过程的一部分。一切都与解决问题和学习如何查找信息有关。教育工作者在编程课堂上拥有的最伟大的工具是这句话:“我不知道;让我们一起找出答案!”

那么,让我们开始吧!

什么是代码?

代码是你让计算机执行你想要它做的事情的方式。笔记本电脑、智能手机、视频游戏机,甚至洗衣机都使用代码来工作。尽管机器学习和人工智能取得了进步,但仍然需要有人编写代码。

程序员(也称为编码员)是编写代码的人。但代码到底是什么?程序员在创建软件或微调硬件时到底在编写什么?

代码由算法组成:高度结构化和有序的指令列表,很像食谱。由于计算机实际上并不聪明,因此这些指令以代码编写,这些代码必须被解析、编译并转换为机器语言。只有这样,计算机才能执行程序员指示的操作。关键是学习代码的语法,以便你可以按要求的顺序编写单词,以便计算机可以解读和处理它们。

什么是 Scratch?

Scratch 是一个非常适合儿童学习编程的平台。它是一种专为 8 岁及以上儿童设计的可视化编程语言。它使用拖放式积木,这些积木可以拼接在一起以创建动画、测验和视频游戏。传统的编码需要大量打字,并且不能出现任何拼写错误,而 Scratch 的可视化特性使年轻的写作者可以轻松学习编码,而不会因拼写错误而陷入困境。

然而,Scratch 不仅仅是关于编码。它还通过授权用户共享和混音项目来鼓励开放的在线社区。还有离线版本可供互联网连接有限的教室和家庭使用。

学习术语

即使孩子以前使用过 Scratch,本课程对于确保他们理解编码术语和逻辑也很重要。

使用 Scratch,你可以使用拼接在一起形成脚本的 代码块 创建视频游戏。脚本是指令的有序列表,就像食谱一样。“脚本”的另一个词是 算法

角色是游戏中的角色或对象。舞台是游戏的背景。脚本可用于控制角色和舞台。

每个脚本都以一个特殊的代码块开始,称为 事件帽。这些块具有圆形顶部。事件帽等待某些事情发生,然后运行其下的所有代码块。

Scratch 完全按照脚本执行,因此你在告诉它要做什么时必须具体。

开始编码

尝试以下挑战,开始你的编码之旅。

挑战 #1:创建一个简单的算法,当你按下向右箭头键时,使角色向右移动。

你的算法是否按预期工作?当你按下向右箭头键时,你的角色是否向右移动?你是如何做到的?

在编码时,通常有多种解决方案可以解决问题。以下是当你按下向右箭头键时,你可能用于编码角色移动的两种最常见方法

Possibility One: When right arrow pressed, move 10 steps . Possibility Two: When right arrow pressed, change x by 10.

opensource.com

让我们做个实验。

  • 如果更改数字会发生什么?
  • 当你的角色到达屏幕边缘时会发生什么?
  • 哪个运动代码块可以防止角色在到达边缘时消失?

现在会发生什么?你如何解决它?

要阻止角色在撞到边缘后倒置:选择角色并单击 方向。选择 左右 图标或 不旋转 图标。

代码中的错误(例如这个错误)称为 错误。错误是编码的正常组成部分。

修复代码称为 调试

再次测试你的游戏。你是否注意到更多错误?

  • 如果你的角色从屏幕右侧弹回,则你已准备好迎接下一个挑战。
  • 如果当你的角色碰到屏幕右侧时,它在你按下向右箭头键时开始向左移动,请向算法添加一个代码块。

挑战 #2:使角色在你按下向左箭头键时向左移动。

你拥有完成此挑战所需的所有技能和知识!你将如何完成它?

单击此处查看我的解决方案.

如果你正在使用屏幕阅读器,或者你更喜欢文本,请选择此剧透文本以显示答案

可能性一: 当按下向右箭头键时,指向方向 90,移动 15 步,如果碰到边缘,则反弹

当按下向左箭头键时,指向方向 -90,移动 15 步,如果碰到边缘,则反弹

可能性二: 当按下向右箭头键时,将 x 坐标增加 15,如果碰到边缘,则反弹

当按下向左箭头键时,将 x 坐标减少 15,如果碰到边缘,则反弹

当你对你所做的感到满意时,命名并保存你的项目。不要选择“另存为”或“保存副本”,因为这会创建重复的项目。只需单击 保存立即保存

恭喜你,你已经创建了你的前两个算法!

不要止步于此

编码就是不断实验和迭代,直到获得想要的结果。这是我喜欢将其作为教学工具的众多原因之一。并且不要只停留在本入门课程上。

提出一个问题,并尝试使用 Scratch 解决它。例如,你能制作一个 Scratch 猫找到一个物体并“吃掉”它的游戏吗?浏览可用的积木并制定计划,然后构建脚本。

最重要的是,不要放弃,记住,没有错误的答案!一切都与创造力、创造性和乐趣有关。

接下来阅读什么
User profile image.
Jess Weichler 是一位数字艺术家,使用开源软件和硬件在 CyanideCupcake.com 上创作数字和物理世界的作品。

8 条评论

真的,Scratch 是在这个科技时代教孩子们如何编码的理想工具。所有材料都是免费的,并且有很多资源可以帮助教师将编码融入他们的课程中。我喜欢它。

对于绝对的初学者来说,这是一个很棒的入门介绍——介绍基本术语,深入探讨问题解决和实验。我的女儿小时候很喜欢 Scratch。查看他人项目的代码并制作自己的变体(混音)的能力非常酷。

很棒的文章,我会与我的女儿分享这篇文章。谢谢!

想象一下,如果我的小儿子当年坐在 Apple IIgs 键盘前时拥有这个工具,今天会是什么样子。;-) 认真地说,这是我见过的对几年前还是一个非常令人生畏的主题的最佳介绍。让我鼓励你将这些有价值的研讨会文章作为你写作的常规特色。

啊,][gs,我也有一个 ][c ... 美好时光!
那些日子没有 scratch。我很幸运我的学校碰巧有一本 6502 汇编器书,我可以用它来使我的 ][c 脱离 basic,并手动输入汇编操作码来获得一些真正的乐趣。

他们当时确实有一个合理的 Logo,也很有趣。

回复 作者:edkenlon

Creative Commons License本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.