スクラッチの次に学ぶプログラミング言語

IT

年末年始に実家に帰省した際、小学3年生の甥っ子がスクラッチでゲームを作っていました。

話を聞くとスーパーマリオみたいなゲームを作りたいとのことでした。

最近の小学生はすごいなと感心し、スクラッチについて少し興味を持ったため、調べてみました。

スクラッチは、通常のプログラミング言語と異なり、ビジュアルを重視し、小難しいソースコードがありません。

プログラムの部品となるブロックを組み合わせることで目的の機能を作成していくことができます。

これは、知育おもちゃの延長線上にあるようなプログラミング言語だなというのが感想です。

確かに、プログラム作成を通じて、論理的思考をゆっくり学ぶには最適で、かつ、プログラム作成の面白さを体感できる点で素晴らしいと思いました。

しかしながら、ビジュアルによるプログラムの分かりやすさと引き換えに、プログラム作成スピードを犠牲にしていて、本格的なプログラム開発をするには効率が悪い言語であることは否定できません。

そこで本記事では、スクラッチでプログラム作成が面白いと感じ、本格的なプログラム開発を学びたい方に、次のステップとして何を学ぶべきかについて、まとめたいと思います。

スクラッチによるプログラム作成で得られること

スクラッチによるプログラム作成を通じて得られることが、大きく2つあります。

一つは、論理的思考力です。

論理的思考力は、将来どのような職業に就く上でも必要な能力です。逆にこの能力があれば、どの職業に就いたとしても重宝される存在になりえます。

小学校で習う算数や国語でも論理的思考力を学べるかもしれませんが、従来は、授業を受けて、テストを受けるといった「受け身」の姿勢での学びでした。

一方で、スクラッチでのプログラミング教育では、より積極性を持って、実践に近い形で論理的思考力を学ぶことができます。

スクラッチによるプログラム作成で得られることのもう一つが、プログラム作成の楽しさです。

プログラム作成は、目標達成のためのPDCAサイクル(Plan(計画)、Do(実行)、Check(評価)、Action(改善)の流れ)が高速で回せるという特徴があります。

これは、プログラミング作業が、エラーによる失敗、原因分析、改善活動の連続で成り立っていて、かつ、コンピュータの処理速度が速いことから、瞬時に結果が得られることに起因します。

プログラミングを最後までやりきることで、成功体験と達成感を得ることができますが、PDCAサイクルを高速で回せるという特徴から、達成感や自身、プログラミングそのものの楽しさ、面白さを得やすくなります。

従来は、プログラム作成の楽しさを学べる小中学生は、コンピュータが身近にある等、一部の子に限られましたが、プログラミングの必修化で、プログラム作成の楽しさを体験できる子が増えることが予想されます。

スクラッチの次に学ぶ言語は「Arduino」がおすすめ

Arduinoとは

Arduino(アルドゥイーノ)は、全世界で流行しているマイコンボードです。

マイコンボードとは、小さいコンピュータのことで、例えば、家電に搭載されているコンピュータはマイコンです。(Arduinoが家電に搭載されているわけではありません)

Arduino UNO

Arduinoがおすすめの理由

Arduinoが、全世界で流行した理由の一つに、オープンソースであるという特徴があります。

オープンソースとは、簡単に言うと誰でもソースコードを改変できるライセンスのことで、これにより、全世界のプログラマがライブラリの開発を行いました。

Arduinoでは、スケッチと呼ばれるプログラムを作成し、Arduinoに書き込むことでArduino上でプログラムを実行させることができますが、通常、何らかのプログラムをゼロから作成しようとすると膨大な時間を要します。

Arduinoでは、既に全世界のプログラマが用意したライブラリと呼ばれるプログラム部品が数多く存在し、少ない行数のプログラムで目的のアプリケーションを作成できるような状態になっています。

さらに、Web上の情報も多くあり、自分の目的に近いサンプルプログラムを見つけて、それを元に開発を開始することも可能ですし、作成時につまずいたポイントがあれば、Web上で情報が多く出てきます。

Arduinoを学ぶならマイコンモジュール「M5Stack」

M5Stackは、Arduinoのスケッチが動作する筐体とディスプレイ付きのマイコンモジュールです。

サイズは手のひらに収まるぐらいです。

Arduinoは、基盤むき出しのマイコンモジュールであるのに対し、M5Stackは、ディスプレイがあり、筐体内でコンパクトにまとまっています。

Arduinoのような基盤むき出しのマイコンモジュールを使って、目的のものを作成しようとした場合、プログラム作成のほかにも、筐体やディスプレイなどのハードウェアの設計が必要になってきます。

M5Stackでは、そういった点を考慮せずに、純粋にプログラム作成に集中することが可能です。

M5Stackでは、Arduinoのスケッチが動作するので、Arduinoの膨大なライブラリを利用でき、さらにハードウェアまで整っている状態となりますので、初学者でも簡単に始められることが利点です。

「M5Stack」を使ったプログラムの作成例

M5Stackを使ったプログラムの例として、温湿度計付きWi-Fi電波時計をご紹介します。

温湿度計付きWi-Fi電波時計の操作の様子

Arduinoで作ったプログラムをM5Stackで動かせば、このような情報端末を自作することが可能になります。

興味を持たれた方は、是非チャレンジしてみてください。

コメント

タイトルとURLをコピーしました