プログラミング

プログラミングの学び方~ロボット?Scratch?

ロボット?Scratch?

プログラミングを学ぶにあたり、ロボットを動かしながらプログラミングを学ぶ、Scratchのようなソフトウェアを使って画面上で動かして学ぶことについて、
何が違うのか?
どちらが良いのか?
悩む方も多いのではないでしょうか。

今回は、ロボットプログラミングと、Scratchに代表されるソフトウェアを使ったプログラミングの違い、そしてどちらで学ぶのが良いのかを考えてみたいと思います。

プログラミングの種類

プログラミングと言っても、様々な種類のプログラミングがあります。

  • Web(ホームページからSNS、ショッピングサイトなど、Web上のあらゆるシステム)
  • ゲーム(ゲーム制作)
  • アプリケーション(iPhoneやAndroidにインストールするネイティブアプリや、PCのブラウザ上で動作するWebアプリなど)
  • 組み込み系(電子機器が正常かつ安全に動作するためのプログラムなど多岐に渡る)
  • 汎用系システム(膨大なデータを適切かつ安全に処理するためのメインフレームと呼ばれる大型コンピューターのシステム)
  • 通信系(Wi-Fiルーターやモデム、テレビ会議などの通信に関連した製品のプログラム)
  • オープン系(店舗の顧客情報を保管するデータベースや、病院のデータベースなど、複数のコンピューターを接続してシステムを構築)

制作するプログラムの種類によって、よく使われる言語も異なります。また、職業としてのプログラマーの場合、上記種類によって平均的な年収なども異なります。興味のある人は調べてみるとよいでしょう。

プログラミング学習について

ロボット制作を通して学ぶプログラミング、Scratch(スクラッチ)を使って学ぶプログラミングについて、どのようにプログラミングを学ぶのかに目を向けて比べてみましょう。

ロボットで学ぶ

ロボットを使ったプログラミング学習は、モーターやセンサーなどを使ったロボットを作成し、ロボットの「動きの制御」を通じてプログラミングを学びます。近年ではIoT(インターネットオブシングス)の発展により、様々な物がインターネットと繋がって遠隔操作可能になってきました。「IoT(Internet of Things)」に通じる教育としても注目が集まっています。

プログラムの結果はロボットの動きで確認できますので、分かりやすいと言えるでしょう。また、ロボットは子どもの興味を引きやすく、最初に学ぶプログラミングとしても最適と言えます。また、ロボットで学ぶ場合、センサーなどを自作したりするようになれば、電気・電子回路を学ぶよい機会でもあります。

一方で、低年齢の場合、玩具となりやすいという欠点もあります。学びにつながっていくよう、しっかりとしたカリキュラムであることが不可欠です。実際、ロボット・プログラミングの教材の多くがビジュアルプログラミング言語で行われること、ロボットを使ったプログラミング学習では発展性がなく応用が利かなく、高学年以降興味を示さなくなることを挙げる方もいらっしゃいます。こうしたことをおっしゃる方は、きちんとしたカリキュラムを持ち、高度なロボット制作を指導しているロボット教室を見たことがないのでしょう。

Scratch(スクラッチ)で学ぶ

Scratchを使ってプログラミングを学ぶ場合、ゲームやアニメーションなどディスプレイ上で動かす作品を作りながら学びます。Scratchは、MITメディアラボが開発したソフトで、世界のいたるところのプログラミング教育現場で使われています。多くの初心者向けロボット教材のプログラミング言語は、このScratchをベースとしています。

ロボットが必要ありませんので、パソコンがあれば初期費用は少なくて済みます。また、初級に限って言えば、ロボットプログラミングよりも幅広いプログラミングに取り組めます。

ロボットと違い画面上で動かすプログラムですので、じっと座って取り組むのが苦手な子どもには向かないでしょう。低学年の子どもについては、最初はロボットから始め、ゲーム制作などの方により興味を持つようであれば、移行するのもよいかもしれません。

結局、どっちがいいの?

「どちらでも」というのが、私の結論です。要は、子ども自身がどちらに興味を持つかです。分からなければ両方を体験して、子どもがより興味を持った方にすればよいと思います。どちらの学び方の方がレベルが高いということもありません。プログラム言語の主流も時代とともに変わっていくでしょうし、子どもの興味・関心が変わった場合には、その時に考えればよいのです。どちらで学ぶかよりも大切なことは、知識と経験をもった教室を選ぶことです。

ロボット制作でいえば、テキスト以外のことを聞いても分かりやすく説明してくれる、キットを使わずに自作ロボットを制作できる人が常駐している教室が望ましいでしょう。