こんにちは!Tech TeacherのKids Blog編集部です。
「プログラミング学習」に興味があるお子さんやその保護者の方で、こんなお悩みはありませんか?
「プログラミング的思考とは?」
「プログラミング的思考で身につく5つの力とは?」
そんなお悩みをお持ちの方に向けて、本記事では「プログラミング的思考について」「プログラミング的思考で身につく5つの力」についてご紹介します。
本記事を読むと、プログラミング的思考を身につける方法がわかりますよ!
ぜひ最後までお読みください。
プログラミング的思考とは?
プログラミング的思考とは、問題を論理的に整理して、効率的に解決するための考え方です。
文部科学省は以下のように定義しています。
自分が意図する一連の活動を実現するために、どのようなうごきの組み合わせが必要であり、1つ1つの動きに対応した記号をどのように組み合わせたらいいのか、記号の組み合わせをどのように改善していけば、より意図した活動に近づくのか、といったことを論理的に考えていく力
引用元:文部科学省
「プログラミングをする能力」ではなく、日常の問題解決にも応用できる思考方法のことを指します。
プログラミング的思考の具体例
プログラミング的思考の具体例を紹介します。
洗濯をする場合を考えてみてください
- 洗濯物のチェック
- 洗濯機に洗濯物を入れて洗濯機のスイッチを押す
- 洗濯物を干す
洗濯をするためには、この作業の順序を考えることが大切です。
チェックを行う前の洗濯物を洗濯機に入れることはできないので、①は②より先にやる必要があります。
さらに、洗い終わる前の洗濯物を干すこともできないので、②は③より先にやる必要があります。
つまり、①→②→③の順番でやる必要があると分かります。
これがプログラミング的思考の「物事を順序立てて考える」です。
さて、①→②→③の順番にやればいいことは分かりましたが、②から③までにはかなり長い時間がかかりそうです。
この洗濯物が洗い終わるまでの時間の間、洗濯機の前で何もせずに待つのではなく、他の家事をしたり、趣味をしたりする人が多いと思います。
なぜならその方が効率的だからです。
これがプログラミング的思考の「効率的な方法を考えること」にあたります。
プログラミング的思考で小学生が身につく5つの力
プログラミング的思考で小学生が身につく5つの力は以下の5つです。
- ものごとを順番に考える力(論理的思考力)
- うまくいかなくても工夫して直せる力(問題解決力)
- 似ているものをまとめて考える力(抽象化・一般化する力)
- 自分のアイデアを形にする力(創造力)
- 必要なデータをわかりやすくまとめる力(情報の整理・活用力)
①ものごとを順番に考える力(論理的思考力)
プログラミング的思考が身につくと、順番をしっかり考えられるようになります。
どんなことも正しい順番でやらないとうまくいきません。
たとえば、カレーを作るとき、「カレーをお皿に盛る → 野菜を切る」ではうまく作れないですが、「野菜を切る → 煮込む → お皿に盛る」の順番だとうまく作れます。
プログラミングでもどんな順番で動かすかを考えることが大切です。
②うまくいかなくても工夫して直せる力(問題解決力)
プログラミング的思考が身につくと、間違えてもどうすれば直せるかを考える力が身につきます。
プログラムは最初から完璧には作れませんが、何度も試行錯誤することで、だんだんとできるようになります。
たとえば、自転車に初めて乗ったとき、最初はフラフラしますが、何度も乗るうちに、「ペダルをゆっくりこげばいいんだな」と気づきます。
プログラミングも「どこが違うんだろう?」と考えて少しずつ直すとできるようになります。
③似ているものをまとめて考える力(抽象化・一般化する力)
プログラミング的思考が身につくと、ものごとの共通点を見つけて、まとめて考える力が身につきます。
たとえば、「ドッジボール」と「バスケットボール」は、ちがうスポーツだけど、どちらも「ボールを投げる」という共通点があります。
そのため、ドッジボールが得意な人は、バスケでもうまく投げられる可能性があるなど。
プログラミングでも、「キャラクターを右に動かすプログラム」と「車を右に動かすプログラム」は似たような共通点があるので、他の場面でも応用できます。
④自分のアイデアを形にする力(創造力)
プログラミング的思考が身につくと、自分が考えたものを実際に作れる力が身につきます。
たとえば、「ネコがジャンプするゲーム」を作りたいと思ったら、「ネコの絵を描く → クリックするとジャンプするようにする → ゴールを作る」のように、自分で考えたことを少しずつ形にできます。
プログラミングを使うと、上記のようなゲームやアニメーションが自由に作れます。
⑤必要なデータをわかりやすくまとめる力(情報の整理・活用力)
プログラミング的思考が身につくと、多くの情報をわかりやすく整理できます。
整理できると何が大事な情報かがすぐにわかります。
たとえば、先生がクラス全員のテストの点数をバラバラにメモしていたら、すぐに見つけられません。
しかし、「名前」「点数」「教科」のように表にして整理すれば、すぐに見つかります。
プログラミングでも、ゲームのスコアやキャラクターの動きを管理するために「大事な情報をわかりやすく整理する力」が必要です。
プログラミング的思考と論理的思考の違い
プログラミング的思考と論理的思考の違いは以下の通りです。
- プログラミング的思考 → 論理的思考をコンピュータで使える形にする力
- 論理的思考 → ものごとを筋道立てて考える力
論理的思考とは物事を順番に考え、理由を説明できる力のことです。
ただ感覚で考えるのではなく、「なぜそうなるのか?」を明確にする思考です。
たとえば、「2×3はなぜ6になるの?」と聞かれたときに、「2が3つあるから」と説明できるのが論理的思考になります。
それに対して、プログラミング的思考は論理的思考をもとに、コンピュータに指示を出せる形にする力です。
小学生がプログラミング的思考を身につける方法
小学生がプログラミング的思考を身につける方法は以下の通り。
- パズルやボードゲームで遊ぶ
- プログラミングを学習する
- プログラムで動くロボットを作る
- 効率的な順番を考えながら生活する
- チームで問題を解決する
プログラミング的思考を身につける方法として必ずしもプログラミングを学ぶ必要はありません。
しかし、ビジュアルプログラミングという簡単なプログラミングを授業に取り入れるようになった中学校も増えています。
ビジュアルプログラミングについては、以下の記事で詳しく解説しています。

もちろん、プログラミングを学ぶと効率よくプログラミング的思考が身につくので、プログラミング学習も手段のひとつです。
小学生が大好きなマイクラでもプログラミング学習ができますよ!

小学生からプログラミング的思考を身につけよう!
今回は、プログラミング的思考についてご紹介しました。
まとめると、以下のようになります。
- プログラミング的思考とは、問題を論理的に整理して、効率的に解決するための考え方
- プログラミング的思考で小学生が身につく5つの力は
①ものごとを順番に考える力(論理的思考力)
②うまくいかなくても工夫して直せる力(問題解決力)
③似ているものをまとめて考える力(抽象化・一般化する力)
④自分のアイデアを形にする力(創造力)
⑤必要なデータをわかりやすくまとめる力(情報の整理・活用力) - 小学生がプログラミング的思考を身につける方法は
①パズルやボードゲームで遊ぶ
②プログラミングを学習する
③プログラムで動くロボットを作る
④効率的な順番を考えながら生活する
⑤チームで問題を解決する
プログラミング学習や仲間と問題解決して、プログラミング的思考を身につけましょう!