音ブロックを使って演奏する~ブロックを作る(関数 その①)
本講座では、«スクリプト»タブ中の、«その他»カテゴリー内の『ブロックを作る』の使い方を学ぶ。このブロックは、JavaScriptやC言語などのプログラミング言語では、『関数』と言われる機能である。今回は、«音»カテゴリー内のブロックを用いて曲の演奏を行い、複数の命令をひとまとめにして名前をつけることで、コードの可読性・メンテナンス性の向上など、プログラミングにおける重要な要素を学ぶことが出来るようにした。
対象年齢
小学校4年~
学習時間
約60分
必要知識と関連記事
使用する主なブロック
-
その他
- ブロックを作る
-
音
-
◎の音符を○拍鳴らす
-
◎拍休む
-
楽器を◎にする
-
テンポをBPMにする
-
指導ポイント
-
初めから処理シーケンス・実行結果を教えない・見せない
-
try & errorで学ばせること
-
子供達のアイディアを大切にすること
演奏したい曲選び
子供達に好きな曲を選んでもらってよいが、長く・複雑な構成の曲よりも、短めで繰り返しがあるもの、また、以下の例のように、輪唱が可能な曲のほうが本講座には良い。以下例では、童謡『かえるの合唱(かえるのうた)』を選んだ。
曲作り
«音»カテゴリー内のブロックを使う。楽器の種類やテンポなど、好きに選ばせると良い。

『ブロックを作る』のブロックを使う
音符ブロックをどんどん繋げていくと、曲のどの部分まで演奏しているのかが分りづらくなる。これを回避するために、複数の命令をまとめて、意味のある名前をつけて新たにブロック化することで、プログラムが読みやすくなることを教える。
«その他»カテゴリー内の『ブロックを作る』をクリックして表示されるダイアログに、適切なブロック名を記載する。今回は、『第1パート』とした。(尚、オプションで関数の引数も指定出来るが、今回は使用しない)

(新しいブロックの作成例)
上記のOKボタンを押すと、『定義(第1パート)』というブロックが作成される。そのブロックに対して、複数のブロックを繋げてひとまとめにする。

(OKボタンを押した直後に作成される)

(ひとまとめにしたい複数の命令を記述する)
複数のブロックをまとめて一つにすることで、処理が簡潔になることを理解する。

(初めのシーケンス)

(新たにブロックを作成した場合のシーケンス)
曲作りを完成させる
上記の手順で連続する命令を意味毎にまとめて、新たにブロックを作りながら、曲作りを完成させる。

(かえるの歌、完成例)
応用①~メッセージを使って輪唱にする
«イベント»カテゴリー内の『◎を送る』『◎を受け取ったとき』を用いて輪唱にしてみる。

(『第1パート』が終わった直後にメッセージを使う)
応用②~さらにアレンジする
-
テンポを変える&ドラムを入れる
-
演奏に合わせてスプライトを動かす
- 変数を使い、テンポに合わせてスプライトの動きを変える