小学生のプログラミング教室などで使用されている言語は、ビジュアル型・ブロック型言語とテキスト型言語があることをご紹介しました
では、小学生向けプログラミング教室で使用されているツールや教材としてはどのようなものがあるのでしょうか。ここでは、プログラミング教室で使用されているツールや教材についてご紹介します。
小学生向けプログラミング言語として最も使用されているScratch(スクラッチ)
今最も小学生向けのプログラミング言語として使用されているのが、ビジュアル型・ブロック型プログラミング言語に分類されるScratch(スクラッチ)です。
パソコン(タブレット)とネット環境があれば、どこでもプログラミング開発ができ、自分がプログラミング開発した作品を公開したり、他の人のプログラムを見る機能があり、小学生のモチベーション維持にも一役買っています。
Scratch(スクラッチ)は、8歳以上を対象としてつくられていますが、もっと低年齢である5〜7歳向けに開発された「Scratch Jr.」というツールもあります。
Scratch(スクラッチ)が普及している要因は、(1)アメリカのデジタルメディア研究所であるMITメディアラボが開発していること(2)すでに世界中で100万人以上の子供たちが利用していること(3)すべて無料で利用できること(4)教材が豊富にあること、などが背景にあります。
Scratch(スクラッチ)を利用には、ある一定の制御や論理理解が必要になります。また、作成したプログラミングをテキスト型プログラミング言語へ変換する機能がついていないため、テキスト型プログラミング言語へステップアップする際は、別の教材や教育が必要になります。
Viscuit(ビスケット)
次にビジュアル型・ブロック型プログラミング言語として耳にするのは、Viscuit(ビスケット)ではないでしょうか。
このViscuit(ビスケット)も、スクラッチ同様、パソコン(タブレット)とネット環境があれば、どこでもプログラミング開発ができます。
Scratch(スクラッチ)との違いは、まず自分でイラストを描いて、そのイラストを使ってアニメーションやゲームを作ることができる点です。文字を使わなくてもプログラミングができる点で、幼児でも理解できるように工夫されています。
具体的には、「条件:魚と魚がぶつかったら」「結果:それぞれの魚が向きを変える」というプログラムを作りたいとします。Viscuit(ビスケット)の場合、条件も結果に関してもすべて自分で作成したイラストを動かすことでプログラミングすることができます。
そのため、文字が読めない幼児でも感覚的に「どのようになったらどういう動きをさせたい」というプログラミングをかけるようになっています。
Viscuit(ビスケット)を使って、世界で一つだけの動く絵本を作って公開している子供たちがたくさんいるので、興味のある方はチェックすることができます。
ビジュアル・ブロック型言語とテキスト型言語の融合!Smalruby (スモウルビー)
先ほど紹介した「Scratch(スクラッチ)」や「Viscuit(ビスケット)」はビジュアル・ブロック型プログラミング言語でした。これらのプログラミング言語のメリットは、(1)文字の読み書きができない・文字の打ち込みができない幼児でも感覚的にプログラミング言語を学べる点(2)プログラミングの文法入力ミスがない、という点です。
しかし、実際のプログラミングの世界ではテキスト型プログラミング言語で構成されているため、ビジュアル・ブロック型プログラミング言語からテキスト型プログラミング言語にステップアップする際に一つの壁がありました。
そこで登場したのが、ビジュアル・ブロック型言語とテキスト型言語の融合したSmalruby (スモウルビー)というプログラミングツールです。
Smalruby (スモウルビー)は、Rubyというテキスト型プログラミング言語(実際に多くの会社で使用されているプログラミング言語の一つ)を子供向けにブロック型プログラミング言語でも組めるように開発されたプログラミング言語です。
最大の特徴は、ブロック型プログラミング言語で作成したプログラムを、ボタン一つでテキスト型プログラミング言語(Ruby)に変換できる点です。この機能があることによって、「ブロック型プログラミング言語で作成したプログラムが、テキスト型プログラミング言語ではどのようなコードで書かれているのか」を瞬時に確認することができます。
これにより、ブロック型プログラミング言語からテキスト型プログラミング言語へのステップアップすることが他のツールに比べてスムーズになります。
一方で、ネット環境とパソコン(タブレット)さえあればプログラミング開発環境が整うわけではなく、Smalruby (スモウルビー)をパソコンにダウンロードする必要があります。今までパソコンに様々なソフトをダウンロードした経験のある場合は、この作業は問題なく進められると思いますが、パソコン初心者にとってはわからないことも多く、ダウンロードの途中で断念してしまう人も少なくありません。
このような点が足かせになってしまい、Smalruby (スモウルビー)が使用されないという例は多くあります。実際に、Smalruby (スモウルビー)を使用したプログラミング教室はScratch(スクラッチ)に比べると少ないのが現状です。
その他の小学生に向いているビジュアル・ブロック型プログラミング言語
先ほど紹介した「Scratch(スクラッチ)」「Viscuit(ビスケット)」「Smalruby (スモウルビー)」以外にも、小学生向けプログラミング教室で使用されているツール・教材についてご紹介します。
プログラミン
文部科学省が開発した子供向けプログラミング言語です。スクラッチやビスケットと同様、パソコンとネット環境があればプログラミングを始められるため、比較的容易にプログラミング環境を整えることができます。
プログラミンも、自分で絵を描いたりすでに用意されているイラストを使って、歩かせたりジャンプさせるといったプログラムを簡単に作ることができます。
残念ながら、スクラッチに比べるとプログラミンはあまり普及していないのが現状です。ちなみに、プログラミンはスクラッチを参考に作られています。
レゴマインド ストーム EV3(言語部)
レゴマインド ストーム EV3 は、レゴの教育版になります。レゴブロックを使って自分の好きなものを組み立て、パソコン上で作成したプログラムをレゴに反映させて動かすことができます。
例えばレゴで車を作り、スマホでコントロールできるプログラミングを組めば、スマホで指示した通りに前方・後方・右折・左折などをさせることができます。
このように、レゴマインド ストーム EV3は、プログラムを作る要素だけでなく、そのプログラムを使って実際に物体(ロボット)を動かすところまでを一気に学ぶことができる学習ツールになります。
デメリットとしては、(1)レゴマインド ストーム EV3が5万円台と比較的高価であること(2)レゴ(ロボット)の組み立て知識・プログラミングの知識が必要なため、対象年齢が10歳以上であり幼児・小学校低学年向けの商品がないことが挙げられます。
テキスト型プログラミング言語で小学生向けツールはないの?
今までは、ビジュアル・ブロック型プログラミング言語をメインにした教育ツールをご紹介してきましたが、「プログラミング教育の導入としてはビジュアル・ブロック型プログラミング言語でもいいけど、最終的にテキスト型プログラミング言語まで教えてくれる教室はないのか?」と考えられる方もいらっしゃるのではないでしょうか。
実際、プログラミング教室の中には、テキスト型プログラミング言語を教える教室があります。ではどのようなツールを使っているのかご紹介しましょう。
Basic (ベーシック)
Basic (ベーシック)というプログラミング言語は、歴史が長く、テキスト型のプログラミング言語の基礎学習に適しています。
しかし、テキスト型プログラミング言語ならではの文法ミスのフォローが必要になるため、教育人材を確保が必要になり、結果的にプログラミング教室ではあまり利用されていないのが現状です。
Objective-C (Swift)
Objective-C (Swift)の一番の特徴は、iPhone アプリの開発ができる点です。
実際にObjective-C (Swift)をプログラミング教室で使用している教育者からは、「生活の一部担っているスマホ上で自分の開発したアプリが実行できることで、子供のプログラムに対するモチベーションを維持することができる」という声が上がっています。
しかし、開発にはMac(アップル社が出しているディスクトップパソコン)が必要になるため、Objective-C (Swift)を使用するためには初期投資しなければなりません。この点がボトルネックになり、プログラミング教室ではあまり普及していないのが現状です。