プログラミング教育に向けて 「Scratch」に触れてみる

一昨年から街中を歩くと、パソコン教室や塾などのスクールの看板などに「プログラミング」という文字の掲載が徐々に増えて参りました。また、ショッピングモールや団地の集合施設でもプログラミング教育のイベントが開催されている事もあります。

2020年度より、日本国内の小学校でプログラミング教育が始まり、プログラミング教育を実施する目的は、「論理的思考力や創造性、問題解決能力等(文部科学省の公式サイトの文章より一部引用)」を早い段階から育むことを目的としています。

そのため、必修化するプログラミング教育に備え、子供の習い事で今現在プログラミングが徐々に浸透してきています。

多くのスクールがプログラミング教育で使用している言語は、「Scratch」という言語です。

scratch_1

「Scratch」は、MITメディアラボが、プログラミング初心者に製作を通して、更なる学習意欲を持たせる事を目的に、構文の書き方を覚えることなく、インタラクティブアニメーションやゲーム、アート作品を開発することのできるヴィジュアル言語です。

「左に8歩移動」「右に20度回転」といった、ブロックをつなげるだけで実行することができ、遊び感覚のある言語になってます。

昨今、日本では「TECH KIDS GRAND PRIX」という小学生対象の開発コンテストでも応募対象となっており、「Scratch」でアプリを開発した受賞者も登場しました。

 

それでは、実際にScratchに触れてみましょう。

下記のURLにアクセスして「作ってみよう」を選択します。
https://scratch.mit.edu/

scratch_14

すると、Webブラウザ上でプロジェクトの画面が描画され、マシンにソフトウェアをインストールすることなく、すぐに使う事が可能です。

scratch_2

緑の枠のウィンドウが、チュートリアルの紹介しており、紹介通りにネコを動かして挨拶するプログラムを動かしてみます。

scratch_2

まず、画面左のコードより、実行するコードのブロックを真ん中の大枠にドラッグ&ドロップで運びます。

scratch_11

選択して運んだブロックを、下記のように繋ぎます。

scratch_15

ブロックが一旦完成したので、実行ボタン(緑のフラッグ)を押します。

scratch_16

すると、下記のように、ネコは「こんにちは」と挨拶して、コードのブロックの結果がスクリーンに反映されます。

scratch_17

では、次に少し自身でシチュエーションを考えてみて、要素を付け足してみます。今度は、キャラクターを2体にして、片方が挨拶したら、もう片方が挨拶を返すプログラムです。
画面右下の隅のアイコンより「背景を選ぶ」を選択します。

scratch_4

使用したい背景を選択します。今回は、「Boardwalk」という海のある背景を選択します。

scratch_5

次に、新しくキャラクターを追加します。画面右下の隅のアイコンより「スプライトを選ぶ」を選択します。

scratch_6

使用したいキャラクターを選択します。今回は、「Bear」を使用します。

scratch_7

すると、画面にクマが追加されます。あとは、2体のキャラクターをドラッグ&ドロップで適当な位置に移動させます。

scratch_18

また、クマがネコの方を向いていない場合、クマの「向き」を調整します。

scratch_19

「向き」をクリックして、左右反転のアイコンをクリックし、「-90」に値を調整します。すると、クマは、ネコの方を向きます。

scratch_8

画面を調整したら、各キャラクターにコードを追加してみます。
まず先にネコのコードを追加し、最後にメッセージを送るようにします。

scratch_10

次にクマのコードを追加します。ネコからメッセージが届くので、メッセージが届いたらクマのプログラムを実行します。

scratch_9

そして、実行ボタンを押すとプログラムを開始します。
初めにネコが歩き、その後クマを見つけて「こんにちは」と、挨拶します。
すると、クマは立ち上がって、「こんにちは」と挨拶を返します。

scratch_13

これで、プログラムは終了です。

他にも制御・演算コードなどで、計算、条件式、繰り返し処理のようなコードを追加することも可能です。

実際に触れてみて、プログラマーとしては初心に帰った気持ちとなり、
プログラムというのは、論理的な順番に基づいて処理を動かすというものをしっかり覚える事ができます。
また、まず画面のデザインもとてもわかりやすく、徐々に進めていく内に、
他のコードにも興味が沸くようになっていき、教育ソフトとしてかなり適した言語になっていると思います。

もし、プログラミング教育に興味を持たれてましたら、
Webですぐ簡単に扱う事ができるので、おススメです。