适合7岁孩子的环境[关闭]

2024-01-02

我7岁的孩子想学编程? (他的想法不是我的,而且他在外面的世界做事。所以,从这个角度来看,我并不太担心。他甚至从我的办公室拿出一本游戏编程书在睡觉时阅读。 )有一天,我们坐下来写了一个非常简单的猜数字游戏(你选了 8,它是正确的,其他都是错误的)。

一切顺利,但他根据该语言的语法提出了许多问题。 (我碰巧选择了 Java,因为我当时打开了 IDE。)我教授高等教育入门编程课程,所以这对我来说有点大开眼界(大多数高中毕业的学生都不愿意问问题)我真的必须弄清楚,如何向 7 岁的孩子解释语法?

显然,任何 C 类型语言都会遇到相同的问题,大多数“语言”也是如此。我看了看吱吱声,但决定暂时不使用它。我查看了 Alice 的环境,但也不喜欢它。

从身体角度来看,他可以轻松使用键盘/鼠标,并且可以相对轻松地组装乐高积木(因此遵循指示并获得有趣的结果对他来说很有效)。我可以使用 Lego NXT,但他还太年轻(即使使用提供的图形环境,也需要很长时间才能看到工作结果)。

理想情况下,我希望这段经历能帮助他建立对数学和逻辑的信心(如果 7 岁的孩子有逻辑:-)。

我记得小时候使用过海龟图形/标志。我倾向于这个,但想知道是否还有其他想法或者是否有人可以推荐一个好的徽标环境?

Edit 1:

标志效果很好。我需要教他角度的概念(90 度、180 度)。不幸的是,他们在学校并没有真正做除法,所以角度可能很有趣......

首先画一个正方形:

FORWARD 50
RIGHT 90
FORWARD 50
RIGHT 90
FORWARD 50
RIGHT 90
FORWARD 50
RIGHT 90

稍后我会进入循环:

REPEAT 4 
[
    FORWARD 50
    RIGHT 90
]

然后是变量:

make "length 50

REPEAT 4 
[
    FORWARD :length
    RIGHT 90
]

这效果非常好。几乎没有语法,7岁孩子就能轻松记住词汇,并且可以立即反馈。

Edit 2:

嗯,这是成功的,因为当我不在房间时,他能够编写一个简单的程序(还没有循环)。实际上效果很好——我们出去拿了方格纸和量角器,我们算出90度角,他做了一堆正方形,把一个正方形变成了一个长方形,然后看看他哪里出错了,如何调试它。我向任何对编程感兴趣的 7 岁孩子推荐这种方法。我想我也会向我的专上学生推荐它(!)


Javascript 中实际上有一个基于浏览器的 Logo 解释器。

http://logo.twentygototen.org/ http://logo.twentygototen.org/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

适合7岁孩子的环境[关闭] 的相关文章

随机推荐

  • 使用 d3.js 绘制 topojson 文件(纽约市行政区和人口普查区)

    这是第一个topojson如此提问 我在渲染地图 纽约市行政区 时遇到问题 并且不明白为什么 下面的代码只是一个副本这个例子 http bl ocks org 4108203使用不同的 topojson 文件 我已上传文件here http
  • jqgrid 的通用搜索字段

    我是 jqgrid 的新手 我发现有四种方法可以在 jqgrid 中实现搜索 a toolbar searching a custom searching a single field searching a more complex ap
  • 如何在 bash 中使用 grep 测试进程是否正在运行?

    我有命令 ps ax grep my application 它输出一个大字符串 包括我的应用程序中涉及的进程的端口 如果 my application 未运行 则输出 3873 pts 0 S 0 00 grep my applicati
  • Laravel/blade 缓存 css 文件

    我正在 Nginx 服务器上工作 使用 PHP FPM 我安装了Laravel 4 1 and bootstrap v3 1 1 这就是问题所在 在过去的 30 分钟里 我一直在尝试更改我首先声明的检查 boostrap 的 CSS 规则
  • PageKeyedDataSource loadAfter 没有起火

    在我的片段中 我集成了 android jetpack 分页库和我使用的数据源页面键控数据源带有改造 API 回调 代码以异常方式运行并将数据加载到回收者视图但当我滚动到底部后 它应该通过触发加载更多数据加载后数据源类中的函数 但没有 我也
  • 如何在swift 3中绘制圆弧

    我有一些来自网络服务的百分比值 根据百分比值我想在a中画一些圆弧UIView通过以下方式 白色圆圈是一个UIView我尝试通过这种方式来实现这一目标 func colorProgress let circleColorPath UIBezi
  • byte[] 到无符号 BigInteger?

    动机 我想将哈希值 MD5 SHA1 等 转换为十进制整数 以便在 Code128C 中制作条形码 为简单起见 我希望所有结果 大 数字都是正数 我能够在 C 中将 byte 转换为 BigInteger 到目前为止我所拥有的样本 byte
  • 如何在 Visual Studio 2013 中启用 C# 6.0 功能?

    我正在了解 C 6 0 中引入的最新功能 并且只是遵循自动属性初始值设定项的示例 class NewSample public Guid Id get Guid NewGuid 但我的 IDE 无法识别该语法 我想知道如何在 Visual
  • Docker 容器构建失败:“exec:\”flask\”:在 $PATH 中找不到可执行文件”:未知

    我正在学习码头工人 我尝试在 docker com 上运行示例 dockerfile 但我有一个问题是 守护进程的错误响应 OCI 运行时创建失败 container linux go 345 启动容器进程导致 exec flask 在 P
  • 如果文件已重命名,如何查找文件扩展名?

    如果文件已重命名 如何查找文件扩展名 有没有可用的工具 示例 我有一个文件 1 doc 我希望大家知道这是一个我刚刚重命名为 1 txt 的Word文档 但该文件原本是Word文档 如何获得原始文件扩展名 您无法恢复以前的文件扩展名 您所能
  • 通过流下载 azure blob - 出口 137

    我正在尝试通过 Azure python sdk get blob to stream 下载大文件 但是 我的程序不断退出 返回代码为 137 这似乎与内存不足有关 我可以在顶部看到 python 正在消耗越来越多的内存 直到它被杀死 Co
  • 为 AWS APIGateway 创建 VPC 链接时出现“NLB ARN 格式错误”

    我按照教程创建了一个指向我的私有 elb 平衡器的 VPC 链接 https docs aws amazon com apigateway latest developerguide set up api with vpclink cli
  • 验证是否所有复选框均未选中的快速方法?

    如果取消选择所有复选框 是否有一种快速方法或功能可以告诉我真 假 不通过数组 使用 JS 和 HTML 我所有的复选框都有相同的名称
  • “respond_to do |格式|”抛出 UnknownFormat 错误

    我正在尝试使用 ajax 从控制器渲染 js 文件 这个确切的代码以前总是有效的 甚至在其他方法中也有效 但我突然开始收到此错误 ActionController UnknownFormat in MoviesController vote
  • jQuery 选择框 .val('') 行为从 1.9 到 1.10+ 不同,最短的方法是什么[重复]

    这个问题在这里已经有答案了 jQuery 1 9 和 1 10 之间的以下行为有所不同
  • 局部变量的 MAXRECURSION 值

    我正在 SQL Server 2005 中编写一个存储过程 它声明一个名为 CTE 公用表表达式 foo foo递归地调用自身 但当 SP 的参数之一 bar 一片空白 为了停止这个无限循环 我一直在尝试使用该选项MAXRECURSION
  • 使用 JavaScript 从 Dropbox 下载文件

    I have 我有一个网站正在尝试向客户提供一项服务 以便能够从 Dropbox 下载文件 为了简化开发 我使用Dropbox 选择器 https www dropbox com developers chooser 为此 我启用了我希望从
  • 如何添加元组

    我有这样的伪代码 if b lt a return 1 0 foo a b b 我想用Python写它 但是Python可以添加元组吗 编写类似代码的最佳方法是什么 我会去 gt gt gt map sum zip 1 2 3 4 4 6
  • Clojure / Incanter 中的快速矢量数学

    我目前正在研究 Clojure 和 Incanter 作为 R 的替代品 并不是说我不喜欢 R 而是尝试新语言很有趣 我喜欢 Incanter 并且发现语法很有吸引力 但相比之下 矢量化操作相当慢例如到 R 或 Python 作为一个例子
  • 适合7岁孩子的环境[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi