小学校のプログラミング教育、実際に何を学んでいる?教科書の中身を図解で解説

2020年度から、小学校でプログラミング教育が必修になりました。けれど保護者の方から、よくこう聞かれます。「うちの子、学校でプログラミングをやってるって言うけど、実際に何をしているのか全然わからなくて……」。それもそのはず、小学校のプログラミング教育は「プログラミング」という新しい教科ができたわけではないからです。この記事では、文部科学省の『小学校プログラミング教育の手引』をもとに、学校で本当に学んでいる中身を、算数・理科・音楽の実例とともに図解でやさしく解説します。

プログラミング教育は新しい教科ではなく、各教科の中で実施される 「プログラミング」という教科ができたわけではない よくある誤解 プログラミング科 専用の授業時間がある…わけではない 実際のすがた 算数 理科 音楽 いつもの教科の中で「体験」として行う
小学校のプログラミングは、独立した教科ではなく、算数や理科など既存の教科の中に組み込まれている。

大前提:「プログラミング」という教科はない

まず、いちばん誤解されやすいポイントから整理します。

小学校で必修になった「プログラミング教育」は、国語や算数のような独立した教科ではありません。専用の授業時間も、専用の教科書も、成績の評価欄も存在しないのが基本です。

では、どこで学ぶのか。答えは「いつもの教科の中」です。算数の図形の単元で、理科の電気の単元で、音楽のリズムづくりで——その教科の学びをより深めるための活動として、プログラミングを「体験」します。だから「今日はプログラミングの時間だった」というより、「算数でコンピューターを使って図形をかいた」というのが実態に近いのです。

この点を押さえておくと、お子さんの「学校でプログラミングやったよ」という言葉の中身が、ぐっと見えやすくなります。

育てたいのは「コードを書く力」ではなく「プログラミング的思考」

では、何のためにやるのか。文部科学省がいちばんの目標に掲げているのは、意外にもプログラミング言語を覚えることではありません。中心にあるのは「プログラミング的思考」という考える力です。

手引では、こう説明されています。

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

文章だと少し難しいので、やっていることを4つのステップに分解してみます。

プログラミング的思考の4ステップ:分ける・対応させる・組み合わせる・改善する 「やりたいこと」を実現するまでの考え方 やりたいこと ① 動きを分ける 小さな動作に分解 ② 記号に対応 命令に置きかえる ③ 組み合わせる 順序を考えて並べる ④ 改善する 試して直す うまくいくまで試行錯誤を繰り返す
当てずっぽうで直すのではなく「どこが違ったか」を考えて改善する——この繰り返しが思考力を育てる。

大事なのは④の「改善する」の質です。手引でも、思い付きや当てずっぽうで命令を変えるのではなく、「うまくいかなかったらどこが間違っていたのかを考え、修正し、結果を確かめる」ことが大切だと強調されています。つまり、プログラミングは「論理的に考える練習の場」として位置づけられているわけです。

この力がなぜ将来役立つのか、家庭でどう芽生えが見えるのかは、別記事「プログラミングで本当に論理的思考力は育つのか」でも詳しく扱っています。

学校が育てたい力は「3つの柱」で整理されている

もう少し公式の枠組みを見てみましょう。手引では、プログラミング教育で育てたい力を、他の教科と同じ「資質・能力の三つの柱」で整理しています。

プログラミング教育が育てる3つの柱 小学校で育てたい力の「3つの柱」 ① 知識・技能 コンピューターは プログラムで動いている 手順があれば意図通り 動かせると「気付く」 ② 思考・判断・表現 プログラミング的思考 筋道を立てて考え、 試して改善する力 =教育の中核 ③ 学びに向かう力 コンピューターを よりよい生活や社会に 生かそうとする 前向きな態度
真ん中の②「プログラミング的思考」が、小学校プログラミング教育の中核に位置づけられている。

注目したいのは①の中身です。「プログラムを書けるようになること」ではなく、「コンピューターはプログラムで動いていて、それは人が作っている」「手順を与えれば意図した処理をさせられる」と気付くことがゴールになっています。仕組みが見えない“ブラックボックス”を、少しだけ自分の手で開けてみる——小学校段階ではそこまでで十分、という設計です。

「どこで」学ぶのか——学習活動の6分類

手引では、プログラミングに関する学習を、行われる場所によってA〜Fの6つに分類しています。学校の授業の内側か外側か、で整理すると分かりやすくなります。

プログラミング学習活動のA〜F分類 プログラミング学習が行われる「場所」による6分類 学校の授業の中(教育課程内) A 教科書にも例示あり 算数・理科 など B 教科の中で工夫して 音楽・総合 など C 教科とは別の時間で 入門・基礎学習 D クラブ活動など 希望者向け ※手引で指導例が示されるのはA〜D 学校の外(教育課程外) E 学校が会場の 課外イベント F 学校外の学習機会 習い事・教室 プログラミング教室はここ
学校の授業で扱われるのは主にA・B。プログラミング教室は学校外の「F分類」にあたり、学校の体験を深掘りする役割を持つ。

必修化で各学校が必ず取り組むのは、主にA分類とB分類——つまり、いつもの教科の授業の中で行うものです。私たちのようなプログラミング教室は、いちばん右のF分類(学校外の学習機会)にあたります。学校が「気付き」のきっかけを与え、教室がそれを「作れる・形にできる」ところまで伸ばす、という補完関係です。

それでは、実際の授業でどんなことをやっているのか。手引に載っている代表的な実例を、3つの教科で見ていきましょう。

実例1:算数(5年)— プログラミングで正多角形をかく

もっとも有名な実例が、5年生の算数「正多角形」の単元です。定規と分度器で正六角形をかこうとすると、わずかなズレでなかなか正確にかけません。そこで「コンピューターに命令して正確にかいてみよう」という流れになります。

子どもたちが使うのは、たとえば「長さ100すすむ」「左に〇度まがる」といった、コンピューターが分かる命令だけ。これを組み合わせて正三角形をかきます。

正三角形をかくプログラムと、繰り返しを使った効率化 同じ正三角形でも、書き方は2通りある (a) そのまま並べる ペンを下ろす 長さ100すすむ 左に120度まがる 長さ100すすむ 左に120度まがる 長さ100すすむ 左に120度まがる (b) 繰り返しを使う ペンを下ろす 3回くりかえす { 長さ100すすむ 左に120度まがる } → 短く書けて、角を増やすのも簡単 正三角形 外角=120度 「なぜ60度ではなく120度なの?」という問いが、図形の性質の深い理解につながる。
「正三角形をかこうとして60度ではうまくいかないのはなぜ?」——この疑問の探究が、算数の学びそのものになる。出典:文部科学省『小学校プログラミング教育の手引(第三版)』。

ここでの学びは、実は「プログラミング」より「算数」です。「正三角形なのに、なぜ60度ではなく120度まがるのか」「なぜ正六角形は60度でかけるのか」——こうした疑問にぶつかり、友達と話し合いながら、正多角形の角の大きさと曲がる角度の関係を自分で発見していきます。さらに、辺の数が多くて手書きでは大変な正十二角形なども、繰り返しの回数を変えるだけで簡単にかける。「人には難しくても、コンピューターなら簡単にできることがある」という気付きまでセットになっています。

実例2:理科(6年)— 電気をムダなく使う「センサー制御」

6年生の理科「電気の利用」では、プログラミングで“かしこい照明”を作ります。テーマは、昼に光電池でためた電気を、夜の照明にどう効率よく使うか。

そこで登場するのが「人感センサー」です。人がいるときだけ明かりをつければ、電気をムダにしません。これを実現する手順を、子どもたちがプログラムで組み立てます。

人感センサーで照明を制御するプログラムの流れ 「人が来たら点ける、いなくなったら消す」を手順にする センサーで 人を感知 人がいる? はい 明かりを つける いいえ → 消したまま(節電) 明かりを 消す
「もし〜なら」という条件分岐で動きを変える。トイレや玄関の自動照明と同じ仕組みを、自分の手で作って確かめる。

子どもたちは「センサーがどんな条件で反応すればいいか」を考え、試行錯誤しながらプログラムを完成させます。そして完成後、ハッと気付くのです——「これ、家の玄関やトイレの電気と同じだ」。身の回りの便利な道具が、こうしたプログラムの工夫で動いていることを、体験を通して実感する。これがこの単元のねらいです。

実例3:音楽(3〜6年)— リズムを組み合わせて曲をつくる

意外に思われるかもしれませんが、音楽でもプログラミングが使われます。3〜6年生の音楽づくりで、「タン・タン・タタ」のようなリズム・パターンをブロックのように組み合わせ、まとまりのある音楽をつくる活動です。

リズム・パターンをブロックのように組み合わせて音楽をつくる 小さなリズムの「かたまり」を並べかえて作曲する タン タン パターンA タ タ タン パターンB タン タン パターンA ウン(休み) パターンC 「どう並べると面白い曲になるか」を試しながら、意図をもって組み立てる。
命令を組み合わせて目的を実現する考え方は、図形でも音楽でも同じ。教科をまたいで「組み立てる思考」が育つ。

「ここはこのリズムを2回くり返して、最後は休符で締めよう」——こうやって意図をもってパーツを組み合わせる体験は、算数で命令を組み合わせたのと、実は同じ思考です。教科は違っても、根っこにある「プログラミング的思考」は共通している。これが、各教科に散らばって組み込まれている理由でもあります。

まとめ:学校は「気付き」、教室は「形にする」

ここまでの内容を整理します。

  • 「プログラミング」という教科はない。算数・理科・音楽など、いつもの教科の中で体験として行う
  • 目的はコードを書けることではなく「プログラミング的思考」。分ける→記号にする→組み合わせる→改善する、という考え方を育てる
  • 算数では正多角形、理科ではセンサー制御、音楽ではリズムづくりと、教科の学びを深める形で組み込まれている
  • 学校が担うのは主に「気付き」の段階。その先の「自分で作れる・形にできる」へ伸ばすのは学校外(F分類)の役割

小学校のプログラミング教育は、よくできた“入り口”です。「コンピューターは手順で動く」「自分でも動かせる」という気付きを、すべての子どもに届けてくれます。一方で、授業時間は限られ、一人ひとりが自分の作りたいものを最後まで形にする時間まではなかなか取れません。

「学校でやって面白かった」「もっと作ってみたい」——お子さんがそう感じたなら、それは次の一歩のサインです。当教室では、学校で芽生えた気付きを、HTML/CSS/JavaScript で実際に動くWebサイトやゲームをつくるところまでF分類の学びとして伸ばしていきます。授業の様子は、ぜひ一度見学にいらしてください。

出典:文部科学省『小学校プログラミング教育の手引(第三版)』、文部科学省「小学校プログラミング教育に関する概要資料・取組事例」

プログラミングの楽しさを
体験してみませんか?

既存のクラスへ体験参加していただき、楽しいゲームやアクティビティ、クリエイティブな学びをクラスのみんなと体験できます。無料体験レッスンで、プログラミング学習の新しい世界を発見しましょう!

プログラミングのイラスト