「プログラミング的思考って結局なに?」

「子どもにプログラミングを習わせると、どんな力がつくの?」

小学校でのプログラミング教育の必修化。そんな疑問を持っている保護者も多いのです。

でも、プログラミング的思考って言われてもよくわからないですよね。

実は、プログラミング的思考とはコンピュータを扱うためだけでなく、日常生活や勉強にも役立つ、すべての子どもに必要な考え方なのです。

この記事では、「プログラミング的思考」の5つの要素を、日常生活の例でわかりやすくご紹介します。

みねこ

うちの小学生の子供もプログラミング教室へ通っています。
小学生ママでSE経験者が、ママ目線でわかりやすくご紹介します!


プログラミング的思考の5つの要素

プログラミング的思考は、この5つの力が合わさった「問題解決の力」です。

  1. 大きな問題を小さく分ける力(分解
  2. 必要な部分だけを抜き出す力(抽象化
  3. パターンを見つけて応用する力(一般化
  4. 順番を考えて行動にする力(組み合わせ
  5. 試して直して、より良くする力(シミュレーションと評価

では、ひとつずつわかりやすい具体例を見ていきましょう。


1. 大きな問題を小さく分ける力

分解(Decomposition)=大きな問題を小さなステップに分ける力

例:カレー作り

いきなり子供に「カレーを作ってみよう」と言っても、子供にとっては何をすればいいか理解が難しいです。

大変そうだからイヤだとも言いかねません。

カレー作りは、「材料を切る → 炒める → 煮込む → ルーを入れる」と分けて説明してあげれば、ぐっと取り組みやすくなりますよね。

みねこ

「宿題やろう」より「まずは国語のプリント1枚、次に算数のドリル」と分けた方が、まずは国語からやっていこう!と子供のやる気に繋がりやすいですよね。


2. 必要な部分だけを抜き出す力

抽象化(Abstraction)=たくさんの情報の中から「本当に必要なもの」だけを取り出す力

例:地図アプリ

道案内で「建物の名前」や「道路の色」までは出てきませんよね。

「次は右折」「あと200m直進」など必要な情報だけに絞ってくれます。

「ここは○○さんの家」「その隣は○○さんの家です」なんていちいち表示されたら、どの情報が必要かわからなくて混乱しますよね。

みねこ

文章問題を解くときに「必要な情報だけをピックアップする」のも抽象化の練習になります。


3. パターンを見つけて応用する力

一般化(Generalization)=「こうすればうまくいく」というパターンを見つけて、ほかの場面にも応用できる力

例:レシピ
美味しいカレーの作り方をレシピにまとめれば、他の人も同じように作れますよね。

みねこ

学校でも子供たちがゲームの攻略方法を共有することがありますよね。これも一般化の力です。


4. 順番を考えて行動にする力

組み合わせ(Combination)=効率よく正しい順番に並べて行動する力

例:朝の支度
「顔を洗う → 歯を磨く → 着替える → 朝ごはん」
順番を決めておけば、バタバタせずに準備できます。

みねこ

プログラミングでは「順番」「くり返し」「もし〜なら」を組み合わせて動きを作っていきます。手順を考えるのはとても大事な力になりますよ。


5. 試して直して、より良くする力

シミュレーションと評価(Simulation & Evaluation)=試してみて、改善していく力

例:料理
ルーを入れる前に味見して、「ちょっと薄いから塩を足そう」と調整するのもこの力です。

みねこ

子どもなら遊びやゲームの中でも「上手くいかないからこうしよう」と試して改善していくことが、まさにシミュレーションと評価になります。


まとめ:プログラミング的思考は「生きる力」

プログラミング的思考の5つの要素は、ただパソコンでコードを書くためのものではありません。

  • 毎日の生活の中で問題を解決する力
  • 学校の勉強に取り組む力
  • 将来、仕事や社会で役立つ力

こうした「生きる力」そのものなんです。

子どもがプログラミングを学ぶことで、失敗しても考え直して挑戦する姿勢や、自分で答えを見つける力が育っていきます

みねこ

うちの子もプログラミング教室でたくさんの能力を伸ばしているのが実感できます。

プログラミング的思考は、これからの未来に向けて子供たちに必要不可欠な思考力です。

子供の好奇心に合わせて、能力を伸ばしていきたいですね。