プログラミング教育のねらい・目的をエンジニアがわかりやすく解説

プログラミング教育のねらい・目的をエンジニアがわかりやすく解説

※当サイトには広告が掲載されています。ご了承くださいm(_ _)m

小学校でプログラミング教育が必修化されたけど、そのねらい・目的はなんだろう?具体的にはどんなことを勉強するのかな?家庭でもプログラミング学習をしたほうがいいのかな?

こんな疑問にお答えします。

本記事の内容
  • プログラミング教育のねらい・目的をエンジニアがわかりやすく解説
  • プログラミング教育の具体的な内容を紹介
  • できれば家庭でプログラミング学習をしたほうがいい理由【簡単な方法も紹介】

今回は文部科学省のプログラミング教育に関する資料をもとに解説します。

ちょっと長いですが、大手メーカーでソフトウェアエンジニアを6年以上経験している私がわかりやすく噛み砕いて解説しているのでぜひ最後までご覧くださいm(_ _)m

参考文献:文部科学省 「小学校プログラミング教育の手引(第三版)」
スポンサーリンク

プログラミング教育のねらい・目的をエンジニアがわかりやすく解説

文部科学省のプログラミング教育に関する資料「小学校プログラミング教育の手引(第三版)」によると、小学校におけるプログラミング教育のねらい・目的は3点あります。

  1. 「プログラミング的思考」を育むこと
  2. プログラムの働きやよさ等への「気付き」を促し、コンピュータ等を上手に活用して問題を解決しようとする態度を育むこと
  3. 各教科等の内容を指導する中で実施する場合には、各教科等の学びをより確実なものとすること

これだけ見てもよくわからないので、1つずつ解説しますね。

1.「プログラミング的思考」を育むこと

まず、プログラミング的思考というのがどんな思考なのかわからないですよね。

資料によると、プログラミング的思考とは

自分が意図する一連の活動を実現するために、どのような動きの組合せが必要であり、一つ一つの動きに対応した記号を、どのように組み合わせたらいいのか、記号の組合せをどのように改善していけば、より意図した活動に近づくのか、といったことを論理的に考えていく力

出典:文部科学省「小学校プログラミング教育の手引(第三版)」

とのことです。

「記号=命令」と考えてもらったらわかりやすいです。

つまり、「プログラミング的思考」を育むとは

身の回りにあるプログラムは小さな命令の組み合わせでできてるよ。自分が作りたいプログラムを作るにはどのように組み合わせたらいいか考える力が大事だからそれを身に着けましょうね。

ということです。

プログラミング教材を使って解説してみます

まだイメージが湧かない方のためにプログラミング・フォロというロボットを使って解説します。

プログラミング・フォロ」は2種類のプログラミングソフトでプログラムを作ることができる6足歩行ロボットです。プログラミング・フォロ for PaletteIDEの前

例えば、ロボットを3秒間前進させるプログラムをそれぞれのプログラミングソフトで作ると次のようになります。

▼プログラミングソフト①(PaletteIDE)

▼プログラミングソフト②(Microsoft MakeCode for micro:bit)

見比べてみると分かる通り、プログラミングソフト②は命令が複雑ですよね。これは「足用のモーターが接続されている端子に正回転方向に最大信号を出力する」という命令で前進を実現しています。

一方、プログラミングソフト①ではその細かい命令を「前進」というアイコン一つにまとめてあります。3秒経つと自動で停止します。

どうでしょうか?結構違いますよね。1つ1つの小さな命令は異なりますが結果はどちらも「ロボットを3秒間前進させる」です。

このように、プログラミングソフトによって1つ1つの命令は異なりますが、組み合わせ方しだいで意図した動作をさせることが可能です。

これが「身の回りにあるプログラムは小さな命令の組合せでできてるよ」ということです。

そして、「使うプログラミングソフトは時と場合によって変わるから意図した動作(目的)を実現するためにはどうしたらいいか考える力を養いましょう」ということです。

これがプログラミング教育のねらいの1つ目「プログラミング的思考」を育むことです。

2.プログラムの働きやよさ等への「気付き」を促し、コンピュータ等を上手に活用して問題を解決しようとする態度を育むこと

これは、まず身近な生活でコンピューターが活用されていること知りましょうということです。

自動ドアや自動販売機、家電製品など身の回りにある電子機器にはコンピューターが組み込まれていて、人間がプログラミングすることで動いています。まずはこの事実を知ることが大事です。

そして、その動作を実現する(問題を解決する)には必要な手順があることに気づくことも大事です。

例えば、自動ドアは

人が近づいたら人感センサーが検知し、その情報をコンピューターに送り、その情報をもとにコンピューターはドアを開けるためにモーターを動かす

という手順で動作しています。

決してコンピューターは魔法の箱(ブラックボックス)ではなく、人間が事細かに指示をして(プログラミングして)動いている物なのです。

以上のことを知り、理解すると生活の中でコンピューターを活用できないかと考えることができるようになります。

なので、「子供の頃からコンピューターを活用して生活を便利にできないかと考える力を養っておくとよりよい人生や社会づくりをできるようになりますよ」ということです。

これらのことを理解し、コンピューターを活用できるようになるためにプログラミングを体験してみようというのがプログラミング教育の2つ目のねらいです。

電気の仕組みを理解するために豆電球を光らせる回路を作る実験をしましたよね?あれのコンピューター版です。

3.各教科等の内容を指導する中で実施する場合には、各教科等の学びをより確実なものとすること

例えば、「プログラミングを活用して算数の学びを確実なものにする」ということです。

言い換えると「算数の学びを確実なものにするためにプログラミングを活用する」ということです。

具体例は後述します。

1つ1つ見ていくとプログラミング教育が見えてくる

以上をおさらいすると、小学校におけるプログラミング教育のねらい・目的は次のとおりです。

  1. 「プログラミング的思考」を育むこと
  2. プログラムの働きやよさ等への「気付き」を促し、コンピュータ等を上手に活用して問題を解決しようとする態度を育むこと
  3. 各教科等の内容を指導する中で実施する場合には、各教科等の学びをより確実なものとすること

どうでしょうか?順番に1つ1つ分解して見ていけばわかってきたのではないでしょうか?

プログラミング教育の具体的な内容を紹介

文部科学省のプログラミング教育に関する資料「小学校プログラミング教育の手引(第三版)」に載っていた例を紹介します。

プログラミングを通して、正多角形の意味を基に正多角形をかく場面

これは算数の授業の中でプログラミングを活用する例です。

正多角形とはこのようなものですね。

正多角形は「辺の長さが全て等しく、角の大きさが全て等しい」という性質があります。

まずは、手書きで正多角形を描いてみて、次にプログラミングしてコンピューターに描かせます。こうすることで、手書きだと時間がかかることや何度も同じ図形を正確に描くことは難しいと実感できます。

そして、コンピューターなら一度プログラムを作ってしまえば一瞬で図形を描け、何度描いても全く同じ図形が出来上がることを体験します。

このようにしてコンピューターが便利なこと、プログラミングをすれば自分が意図する動作を実現できることを理解します。

また、正多角形をコンピューターに描かせるためにどういう命令を組み合わせれば実現できるか考えることがプログラミング的思考を育みます

それと同時に「角の数を変えたらどうなるのかな?」とか「辺の長さを変えたら大きさが違う図形を描けるな」とか思いついたことをすぐに試せるので、正多角形の「辺の長さが全て等しく、角の大きさが全て等しい」という性質を深く理解しやすいです。

これが算数の授業の中でプログラミングを活用する例です。

できれば家庭でプログラミング学習をしたほうがいい理由【簡単な方法も紹介】

結論は、できれば家庭でプログラミング学習をしたほうがいいです

理由は次の2点です。

  • ① 学校のプログラミング教育が普及していないから
  • ② 学校のプログラミング教育を受け入れやすくなるから

順番に解説します。

理由①:学校のプログラミング教育が普及していないから

みんなのコードのアンケート結果によると学校のプログラミング教育はまだまだ普及していないようです。

ですが、今の子供達は2025年の「大学入学共通テスト」から始まる情報科目に向き合わないといけません

学校でのプログラミング教育の導入に時間がかかったらどうなるか?プログラミングの感覚をつかむのが遅れるかもです。

なので、少しでも家庭でプログラミングを体験しておくことはありです。

理由②:学校のプログラミング教育を受け入れやすくなるから

プログラミングの概念を理解するには個人差があります

プログラミングの概念とは「コンピューターに命令してコンピューターに働いてもらう」ということです。

なので、いきなり学校のプログラミング授業を受けると理解に時間がかかるかもです。

そうならないためにも、家庭でプログラミングを体験しておくことは大いにありです。

家庭でできる簡単なプログラミング学習方法

結論は、プログラミングおもちゃを使う方法です

理由は初めてプログラミングに触れるお子さんでも楽しくプログラミングを学べるように作ってあるからです。

自分がプログラミングしたとおりにロボットおもちゃが動くと楽しいですよ。

例えば、「レゴブースト クリエイティブ・ボックス」が有名ですね。レゴブーストのバーニー

レゴブースト クリエイティブ・ボックス」はビジュアルプログラミングソフトでプログラミングするレゴブロックのプログラミングおもちゃです。レゴブーストの概要

レゴブロックでロボットを組み立てたあとは、こんな感じでタブレット上で命令アイコンを1つ1つ並べながらプログラミングします。

少し組み立てたら少しプログラミングし、また組み立てる・・・を繰り返すように説明書が分けられているので、初心者でも抵抗感なくプログラミング学習を始められますよ。

それに、レゴブロックなのでこんな感じで自由に組み換えできます。

オートビルダーは小さなロボットを自動で組み立てる工場なのですが、その動きは感動モノです!!

詳しく知りたい方はこちらのレビュー記事をご覧くださいm(_ _)m
【注意点有】レゴでプログラミング!レゴブーストの口コミ・レビュー

親御さんがプログラミング経験無くても問題ない話

とはいえ、「プログラミング経験者じゃない私が教えられるかな」と思われるかもです。

ですが、安心してください。親御さんがプログラミングを教える必要はありません

プログラミングおもちゃは初心者にもわかりやすいようにできていますし、わからなければ一緒に勉強すればいいです。仕事でもプログラミングの感覚を持っていると役に立ちますからね。

それぐらいプログラミングおもちゃは楽しく学べるようにできています。

これを機にプログラミングに挑戦しよう!

というわけで、家庭でもプログラミングを学習する方法は色々あるのでぜひ挑戦してみてください。

何よりプログラミングは楽しいですからね。

また、レゴブーストのようなロボット教材をプログラミング教育で使うメリットとデメリットもあわせてご確認ください。
プログラミング教育の教材にロボットを使うメリットとデメリット

お子さんが大きくなるのはあっという間です。
「チャンスを活かせる者は決してチャンスを逃さない」ですよ。

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