育儿论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 235|回复: 0

Scratch 和 Kitten 这两款图形化的少儿编程工具

[复制链接]

443

主题

763

帖子

0

积分

新手上路

Rank: 1

积分
0
注册时间
2022-7-25
发表于 2024-1-9 22:05 | 显示全部楼层 |阅读模式
  我是一个程序员,也是一个父亲。工作之余我会经常和儿子聊他们小学信息技术课学习的 Scratch 和 Kitten 这两款图形化的少儿编程工具。
" f$ Z' v" Q, u4 w+ V: a" V
0 {. _! O- H& o1 [4 x: W0 x5 H  我儿子有一次指着书房里显示器上显示的 Visual Studio Code 问我,“为什么我们上课用的开发界面,和爸爸你每天工作用的样子不一样?”
! I( T9 f% |) m2 Q; A% i& n8 T  a# h# V* i/ i  o
  所以我也在想一个问题,什么时候可以让我儿子,从 Scratch,Kitten 这种少儿图形化编程工具,过渡到 Visual Studio Code 这种更专业的编程工具去?1 E/ q7 Q% M$ q: w/ ]7 S

- d8 x/ t7 j2 j2 Y  最近火出圈的 ChatGPT,被很多程序员用来作为自己工作中的代码生成辅助工具。我也在思考如何将 ChatGPT 用到少儿编程领域。由于众所周知的原因,ChatGPT 在国内使用有一定的门槛。但我最近了解到另一款基于人工智能的代码生成器,叫做 Amazon CodeWhisperer, 我已经将它用来辅导我儿子学习编程了。
1 Y: L5 x9 v, s
, v. g8 i' u5 d4 T. H3 B  我和儿子用的开发工具是 Visual Studio Code,我教他在里面写一些最基础的 Python 和 Node.js 代码。* `5 I/ i. f- B7 o" J

$ D$ u1 _8 n& Z" @0 ~  Amazon CodeWhisperer, 属于 AWS Toolkit 的一部分,在 Visual Studio Code 打开 Extension Marketplace 面板,通过搜索关键字 AWS tool 即可安装。% Q4 d4 T+ @( L) F3 S. v5 W

% L3 h, t8 T! o2 R4 s. n1 p) X  安装完毕后,在 Visual Studio Code 左侧多出一个 Developer Tools 的面板,展开 CodeWhisperer 下拉列表,点击 Start,然后选择 Use a personal email to sign up and sign in with AWS Builder ID 即可在 AWS 网站上注册一个帐号并登录:5 x+ O2 C& N1 _& ], f5 W

3 H8 S) n( Z2 U, |  等到我们看到 Developer Tools 面板里,CodeWhisperer 下面显示出 Pause Auto-Suggestions 显示,说明这个基于 AI 的代码生成器已经成功启用了。+ g/ H4 `# P( G
) g0 A+ z2 W9 r1 r+ r7 P
  https://www.infoq.cn/article/tE4JARIoKzaSVav57McG
$ m: M# O( K% l2 R+ C; L3 C4 ^$ R
" N6 Z5 I# n1 a0 w3 K3 M. W0 p  https://www.infoq.cn/article/TprcKvXyB5fsKgC4SaLx
$ ~, J) b' `  E* a0 m( x7 v" x3 A
& X+ m1 y" u0 [6 ?" q. o  https://www.infoq.cn/article/B0JNSlJPFxY5eebdIOZE
0 r1 E& C# y4 I8 p/ g) T* Y
5 b' u! N1 m- V& E' ], \" O  https://www.infoq.cn/article/uPxOOxgMPdhVsFGsgUwD. t1 e, l& |; B' u6 M8 U/ D3 [
* c! b+ W! L* W0 q
  https://www.infoq.cn/article/sEM2KRuq2BAaiPtIGNHx
3 N6 [5 M& V8 m: |) v) p% k: ^0 @+ `5 q3 g4 j( w
  https://www.infoq.cn/article/jE2rzViqAgM8MJYAYWHV
# V% \4 M$ M6 o9 {5 V
, b& M0 n) e) J% E( m: O  https://www.infoq.cn/article/W5RzCzfZ6imJQrCk2lW9
) n& M0 l$ B9 T, j# E
2 q! a5 v- `( r3 {  https://www.infoq.cn/article/QHhWqeXmAQYQahEFMN9j
  v8 z1 I  ^4 h. z$ i  q3 d
* C; i0 w+ p4 \5 T& e' V$ b  https://www.infoq.cn/article/Z5kqO0J3Yq7bt3IiUsCE
2 {* n& i* p9 r. f; s
+ x- W& q+ u" u: |  https://www.infoq.cn/article/8mTxLzES8Hrx7gHH1x3t
8 T5 A3 f; `- f" ^* r6 b5 d7 B% N6 A/ C3 h$ o3 F
  https://www.infoq.cn/article/O6qHtFBMoJUubbIz4MQw
' T" ]/ {$ j. X! F
, l5 L8 ?( w; x' p1 E* ^; Y* t# n  https://www.infoq.cn/article/iCUjvWTzGm68ui4WbqFX" t$ {+ Z+ X% ?# _. j/ C" n
2 o" j9 ?% G  i5 Z& J
  https://www.sohu.com/a/731659594_355140( B. E( S% D) I1 P6 A
, \1 I2 e( K; ?8 p  J
  https://www.sohu.com/a/733252389_355140
! b! B# |$ H/ P
* |5 C( Z" x; F2 W  https://www.sohu.com/a/734898243_355140
9 t, L% A3 {9 e6 Q' O  P( Q8 N: b: i: t! f; k
  https://www.sohu.com/a/736322447_355140; P8 U8 P' ~' w* Q6 X+ a: z  F

7 h& R* h5 P5 `" ^7 J1 R  https://www.sohu.com/a/738502918_355140
7 V7 Y) z4 H& G$ U7 ~  i! P5 L- j9 k) r2 k+ a2 m
  https://www.sohu.com/a/739977693_355140
% b; G- _! n1 e) y1 d! P8 C7 @- F  d/ z6 o  x! I& e; ?
  https://www.sohu.com/a/740505240_355140
% O, P" ?) |8 v& Y9 \; w
8 P0 y3 D! S0 h5 r5 k+ G  https://www.sohu.com/a/742114784_3551403 B% @6 Q+ _4 V" K; y

2 d7 d3 F& ]; Y& E! I. R1 U  https://www.sohu.com/a/742438806_3551401 c2 b* g  S2 P
8 W8 ~+ e; r2 l) ]$ H# `4 N8 L% r
  https://www.sohu.com/a/743480374_355140
, c" U3 `1 x2 j+ O$ e: C7 p
# G6 c3 _# N8 t2 M  https://www.sohu.com/a/744302752_355140$ d7 h- y. y- T9 r. a3 e8 n* x

; v! F, C& \- u* H2 l8 ^8 `7 n5 z  https://baijiahao.baidu.com/s?id=1780877864244787727
4 c* u/ d9 N0 x) J- {, ^9 L) R) O% }7 t& r( `3 t2 n
  https://mbd.baidu.com/newspage/d ... m%22%3A%22bjh%22%7D) i9 x; ?3 P/ q( `8 W
( X7 M) P0 b- k# X
  https://mbd.baidu.com/newspage/d ... m%22%3A%22bjh%22%7D
( h3 }. z. U& Q! J3 Q* g# S$ h$ O$ f& V$ m
  https://mbd.baidu.com/newspage/d ... m%22%3A%22bjh%22%7D
) z3 f9 e* R0 u( |. b$ e9 L& @, t+ g4 @9 p4 }. @& v' z
  https://mbd.baidu.com/newspage/d ... m%22%3A%22bjh%22%7D' Q% m4 [' q7 J3 W

& Q! w! D5 e" C, o+ }! U2 {3 j; l6 I  https://mbd.baidu.com/newspage/d ... m%22%3A%22bjh%22%7D
# K+ }" ]& B4 s0 `5 r6 O; ]
: u2 b; A8 p+ z& N0 C' \' U4 B  https://mbd.baidu.com/newspage/d ... m%22%3A%22bjh%22%7D
: s, P9 P: V# {: V: N& A0 v$ r) {- r, S( }+ R6 N
  https://mbd.baidu.com/newspage/d ... m%22%3A%22bjh%22%7D
1 m& n# S! \+ R+ L9 F9 \6 G7 n
0 I  ~0 E) p( c# _+ L4 }3 b. f  https://mbd.baidu.com/newspage/d ... m%22%3A%22bjh%22%7D' D$ k; r3 l8 b$ l

( n2 ]! Q6 P, ?2 H- ?  https://baijiahao.baidu.com/buil ... 1785327415605564374
' g. Y5 F2 U5 C+ Z
! C6 _9 L6 Q+ B- P  下面就是孩子们发挥自己的想象,随意向 CodeWhisperer 发出指令进行编程学习了。
; W5 t0 |. M8 P, m# s6 @+ Q) i8 _
$ I  X+ u5 W5 U9 N' x  为什么 CodeWhisperer 可以用来辅助孩子学习编程?职业程序员都清楚,包括 ChatGPT,CodeWhisperer 这些 AI 工具,生成的代码仅仅用来作为参考,绝对不能直接用在生产系统里,因此这些 AI 自动生成的代码,可能存在安全风险,缺乏足够的出错处理等等。而相对来说,孩子通过工具自学编程,不需要考虑这些软件产品开发需要注意的产品标准,只需要把注意力放在工具生成代码的语法,编程逻辑和 API 的调用上就行了。$ @8 a  o9 m, D* h5 r! A
5 h. O0 U+ Y4 V/ A; w
  另一方面,CodeWhisperer 的安装和配置非常方便,也不需要像 ChatGPT 那样科学上网。1 J* L5 L0 `+ I9 `; ~/ H
) p; A4 v' Q- _; \7 ?& a
  下面是一些具体的使用例子。. \( Z6 L6 h" f" w
: Y' O9 k; e# i  g7 a3 Y6 _4 X( U
  假设小朋友想用 Python 编程,打印出当前目录下所有文件的列表。
! P, E+ R1 A3 P' b# N
. Q; a' P, u# m$ v$ [' ]  r8 h+ ]- M  在 Visual Studio Code 里新建一个 1.py 文件,然后录入如下注释,可以类比成是 ChatGPT 里的 Prompt:7 }8 ^: P) g" \0 e- o0 h9 b/ o' J1 Y
3 @  c! O- Z2 ~" v) P4 O
  list all files in current folder; W+ m! Z9 D* f$ ]; i; U6 K4 F
( u$ V) y0 q% C  B4 h, P8 ^
  我孩子的英语学习我是全程陪伴的,我觉得现在少儿英语的教育比我上学的时候卷多了。现在小学五年级就已经开始学很多我以前初中才学到的复杂语法,什么定语从句,被动语态,各种完成时等等。这种内卷倒也有一个好处:小朋友用英语编写简单的 Prompt 没有什么障碍:这些 Prompt 都是简单的命令式短句,无非是动词+名词即谓语+宾语的搭配结构。
3 R" V2 _: g5 k( k( u2 e: H& V1 h7 ~. q1 H
  我们在 1.py 里输入 # 开头的 Prompt,回车之后,稍等片刻,CodeWhisperer 就会以灰色的字体颜色,显示出完成这个 Prompt 所需的第一行代码:import os: G8 S  O- t8 @  L' s& ^

' l  I( ?, a* p# F* v  如果我们觉得这行代码能够接受,敲击键盘 Tab 键,就能将其正式书写在 1.py 文件里。6 ~" Y4 q' t  p9 Q
0 V0 \8 j  {# i; V5 Q7 u
  这种一行一行交互式的代码生成方式,适合家长和小朋友坐在一起,出来一行,给孩子讲解一行,也就是逐行理解。9 ?$ |+ p6 G& d% b! l4 V

. h4 J1 V$ l* b. L3 ~  我们在 import os 之后点击回车,稍后片刻,会看到 CodeWhisperer 给我们生成的下一行代码:for file in os.listdir("."):
. `# S8 F, _$ k. z
) R0 B' z: z/ \# q: I' E  同理,点击 tab 按钮之后,for file in os.listdir(".") 这行代码也被我们选定。继续按回车,就会出现下一行代码提示:print(file)
. v5 `  _* E5 l4 P! W4 G/ O
7 X8 O4 U$ ^! d7 L& y& q  就这样,三次回车和三次 Tab 键,就完成了这个需求的编码工作。直接使用 python 命令执行这个编辑好的文件,能得到期望的正确输出。
* x  V; |* `! T3 [
$ c) f, V4 b8 n# ?  我又继续做了测试,针对 Node.js,使用同样的 Prompt,也能得到令人满意的代码和执行结果:7 `0 }6 w6 B: h- W+ ]7 G; _- v6 m

' k6 \7 z8 w/ g8 V: D6 K3 N4 B! I  总结# Q4 x  Y& f( v! Q

& r: S( g. D/ ^, O  Amazon CodeWhisperer 作为一款免费使用的基于 AI 的代码生成工具,不仅能够帮助专业的程序员减少机械的代码编写时间,同时也能作为少儿图形化编程的一个补充,给那些学有余力又对编程感兴趣的小朋友,打开一扇新的通往编程世界的大门。
, r8 b/ d- I. S6 S1 \6 u
& m4 Z6 Q& ?) W$ g
您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系我们|小黑屋|手机版|Archiver|育儿网

GMT-5, 2024-9-22 13:31

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表