Scratchから学べること (2)

前回の「ねずみ」のお題について、まず本物を想像してみて、最初はアナログな手法でプログラムを組んでみましょう。
前回、「ねずみ」をプログラムで表現する中身を、3つのことを決めました。
- 「ちょろちょろと動く」
- 「捕まえようとすると逃げる」
- 「チーズが好き」
では、プログラミングとして実践しましょう。
まず想像してみよう
みなさんはすでに、「動き」や「制御」グループのブロックの使い方は分かっているとしてお話しています。
保護者の方は、以下のブロックを見て、お子さまの組み立て方をぜひ一緒に見てあげてください。


「ちょろちょろと動く」という表現は、簡単そうですが、肝心なのは、考え方です。
最初から目に見えないソフトウェアとしてプログラムを考えるのではなく、まず本物を想像してみて、アナログな手法でプログラムを組んでみましょう。
そういう作業を僕は、「ヒアリング」と呼んでいます。僕はその仕事を、プログラムを作る上で最も難しく感じています。ところが子供というのは、大人が難しいと感じることほど、意外と容易にやってのけてしまうこともあります。
表現を単作業に置き換えよう
「ちょろちょろ動く」というのは、走る方向も距離も定まらず、「走る」と「待つ」の繰り返しで表現できそうではないですか。
- 「走る」と「待つ」を考える
- それを繰り返しで表現する
第一に、表現を単作業に置き換えることが大事です。第二に、プログラムというのは「繰り返し」を上手く使うのがコツです。また、走る方向も距離も定まらないのは「乱数」を使えば解決できます。
では、まず単作業でプログラムを組みましょう。できたら、次に進んでください。
「走る」の表現
はい、僕の答えです。

ご自身の答えと違いますか。
それはそうでしょう。あなたが自分で考えたのなら。
それが大切なことなのです。プログラミングの答えは無数にあるものですから、ご自身で導いた答えを大切にしてください。
これをさらに「乱数」を使って工夫すれば、定まらない距離を走るプログラムになります。

今日のお話はここまでですが、もしできれば宿題として、「定まらない方向を向く」と「待つ」の動作を含めて、「ちょろちょろ動く」の表現を完成させてください。
今日の内容は、実際にブロックを組み立てた作品を、以下のリンクから見ることができます。
https://scratch.mit.edu/projects/391532769/
また明日!