時代が変わり、最近では教育を目的として作られたソフトがたくさんあります。
逆に言うと教育以外の面ではあまり利用できそうもないとも言えますが・・・。
今回は、そんな教育向けのプログラミングについて有名どころを紹介していき、個人的にオススメのソフトを発表したいと思います。
教育向けプログラミングソフトの比較
実は教育向けプログラミングソフトって結構あります。
その背景には、プログラミング教育が段々と本格化している事が挙げられますね。
①Scratch
Scratchは、マサチューセッツ工科大学で子供向けに開発されたツールです。
米国製ですが、しっかり子供が楽しめるように日本語にも対応しています。
ブロックをつなげてプログラムを作るツールとして有名で、Scratchが登場したおかげで、さまざまな教育用のプログラミングツールが続々と登場するようになりました。
特徴は、非常に分かりやすく、使いやすい事。他のツールに比べても圧倒的に子供に優しいです。
ブロックを繋ぐだけの作業が、意外とハマることもあるんじゃないでしょうか。大人でも頭を使って知恵の輪に挑戦するような感覚で、アルゴリズムが身に付くことでしょう。
Webブラウザで動作する
Scrachは、ソフトをパソコンにインストールする必要がありません。
Webアプリケーションなので、ブラウザでアクセスすれば使う事が出来ます。
一般的な開発ツールだと、起動してプロジェクトを開くといった一連の流れがありますが、そんな手間がかからないのでとても手軽です。
ブロックを並べてプログラミングを行う
先ほども説明した通り、ブロックを使ってさまざまな機能を付加していきます。
ブロックを積み重ねていくことで大きなプログラムになっていきます。
その分本格的なプログラミングのような多岐にわたる機能は用意されていません。
それでも簡単なゲームぐらいは十分に作れるので教育向けのツールとしてはかなり優秀です。
②Blockly
Blocklyは、Scratchのような「ブロックを並べてプログラミングをする」といったビジュアルプログラミングのエディタを作成するためのJavaScriptライブラリです。
Blocklyを使うことで、独自のブロックを持つエディタを作ることが出来るわけです。
作成したプログラムは、JavaScriptやPythonなどのスクリプトに変換できるので、さまざまな場面で利用することが出来ます。
また、「Try Blockly」といってその場でブロックプログラミングが出来るようになっており、これがアルゴリズムを理解する上でとても役に立ちます。
個人的にはプログラミングの基本を学ぶ際にオススメですかね。
別の言語を学ぶステップアップとして
「JavaScript」や「Python」といった有名な言語が用意されており、生成されるこれらの言語のスクリプトを読むことで次のプログラミング言語に移行できる事でしょう。
日本語に対応していない
そもそもがプログラマー向けのライブラリなので、日本語対応はちょっと厳しいかも。
そういった意味では、教育向けプログラミングツールとしてはちょっとオススメしにくいですね。
使い方はそこまで難しくはないので、英語でも頑張ろうと思えば使いこなせるかもしれません。
③プログラミン
文部科学省が公開している子供向けのプログラミングツールになります。
「グ」が抜けてるんじゃないの?って思うかもしれませんが、「プログラミン」が正解です。何かの成分みたいな名前ですね。
プログラミンは、Scratchの考え方を元にして、ビジュアルをより子供に扱いやすくしたものです。
当然ブロックのデザインは異なりますが、ブロックを操作する仕組みは基本的に同じです。
シンプルで分かりやすい
子供向けを意識しているだけあって、設計が素晴らしい。
プログラミングが簡単で、各アイコンをクリックやドラッグするだけでプログラムを作れるようになっています。
他にも、絵を描くツールが内臓されていたり、作ったプログラムをその場で公開できたりと子供たちの興味を引くものばかりです。
機能に制限がある
やはり本格的なプログラミング言語に比べると、使える機能が少ないですね。
実際に使ってみると分かりますが、基本的にキャラクターを操作することを意識して作られていることが分かります。だからこそシンプルなんですけどね。
子供はキャラクター大好きですけど、それら以外の機能の少なさに正直驚くかもしれません。
変数や関数も用意されていないので、思った以上に単純な作業しか出来ません。
その辺を理解した上で利用するようにしましょう。
Flashを使っている点
現在のブラウザはFlash禁止の方向に進んでいるので、Flashが利用できなくなったら当然プログラミンも動かなくなってしまいます。
今後どうなるか分かりませんが、恐らくHTML5ベースに切り替わるんですかね。
④Microsoft Small Basic
いつの間にかBASIC言語は消えてしまいましたが、マイクロソフトはパソコンで動くプログラムを作るためのツールをちゃんと用意しています。
その名も「Microsoft Small Basic」です。文字通りとても小さいBASICですね。
小さいBASICと言いながらも基本的な機能は備えており、特にグラフィックを使ったプログラムは割と高度なものまで作れます。
実際に使うと、プログラミングの知識がない方のための教材のようなものであることが分かるはずです。プログラミングがどういったものか勉強したいのであればオススメです。
Web版もあり日本語にも対応している
インストールするのが面倒くさい人のためにも、Web版が用意されています。Macを使っている人はこちらを利用することになるでしょうね。
また、無料で使うことが出来るし日本語版も用意されているのでありがたい。
ただし、Web版の場合は全てアプリ版と同じように使える訳ではないので全ての機能を利用したい場合は、msdnからダウンロードしましょう。
見た目がとてもシンプル
ウィンドウには多少のボタンが並んだだけという非常にシンプルな作りになっています。
メニューバーすらないので、初見だとちょっと驚くかもしれません。
こんなんでプログラミングできるのかと疑問に思うところですが、命令文をキーボードで入力すると、リアルタイムで候補となる命令や、使い方を教えてくれるようになっています。
作成したプログラムをWebで公開
作成したプログラムは、Webで公開することが可能です。
発行ボタンを押すことで、作成しているプログラムがそのままマイクロソフトの用意するWebサイトにアップロードされます。
アップロードしたプログラムは、インポートして使うことも出来ます。
⑤Swift Playgrounds
その名の通り、Swiftという言語を学習するためのアプリです。
アプリということで、基本はiPadを使って学習していく事になります。
アップルユーザーを対象と考えていいと思います。
一通りレッスンが用意されている
Swift習得のために、一通りレッスンが用意されており、順に進めていくことでSwiftがどういったものか段々と理解出来ると思います。
楽しみながら学習できるようになっており、自然にプログラミングが身に付くように出来ています。
iPadだけではなくMacでも動く
iPadのアプリとして提供されていますが、MacのXcodeにも同じ「Swift Playgrounds」という機能が搭載されています。
ただし、Macの場合はレッスンなどが用意されていないので、初めての方は出来るだけiPadを使ってSwiftの基本をマスターするほうが良いでしょうね。
⑥Processing
Processingは、デジタルアートのために作成されたプログラミング言語です。
グラフィックとアニメーションの機能に特化しているのが特徴です。
図形などを描くのがとても簡単で、複雑な形を作成することも出来ます。
シンプルながら関数が豊富
グラフィックに特化しているだけあって、とてもシンプルな文法になっています。
難しいオブジェクトなどはなく、値や関数といった基礎的な文法があるのみです。
ただ、用意されている関数はとても多く、演算やマウスのイベント処理など充実しています。
すぐに結果になる
Processingの場合は、ほんの数行関数を書いて実行するだけで、あっというまに結果が表示される。
数行の記述でも、さまざまな形や色を表現できます。
すぐに実行できる点は、Processingの大きな魅力だと思います。
日本語版がない
残念ながら英語バージョンのみで、日本語版がありません。
英語といっても動かしてみれば分かる程度のものなので、そこまで心配する必要はないはずです。
検索をかければ日本語の情報もたくさん出てきますので。
教育向けプログラミングのオススメは「Scratch」
ここまで6つの開発ツールやソフトを紹介してきました。
やはり普通のプログラミングとは異なり、変わったものが多いです。だからこそ使ってみると面白かったり興味深いものがたくさんあるはずです。
個人的に教育用プログラミングってどんなものか興味がある人にオススメしたいのが「Scratch」です。子供向けに秀逸に作られています。
Scratchを学ぶだけでプログラミングをマスターできる訳ではありませんが、プログラミングにおける考え方を十分学習することが出来ます。
子供が興味を持てるように作られているので、プログラミングに興味があるなら、最初はおもちゃ感覚でも構わないので是非使ってみてはいかがでしょうか。