小学校で学ぶプログラミング教育とは?事例やメリット、おすすめの学習方法を解説
更新日:2025.4.30
公開日:2022.10.25

小学校では2020年からプログラミング学習が必修化されています。複雑なプログラミングを子どもに扱えるのか不安に思う親も多いでしょうが、実は小学校の授業ではプログラミング言語は扱いません。では、小学校のプログラミング教育では、具体的にどのようなことを学習していくのでしょうか。今回は、小学校のプログラミング教育の目的や内容に加え、小学生にも扱えるおすすめのビジュアル言語などについて紹介します。
この記事の目次
1.小学校のプログラミング教育とは?
小学校のプログラミング学習は、主に「プログラミング的思考」を養うことを目的としています。そのため、専門性の高いプログラミング言語を小学校の授業で習うことは基本的にありません。では、小学校の授業では具体的にどのようなプログラミング学習が行われるのでしょうか。ここでは、以下の2点について解説します。
・小学校におけるプログラミング教育の目的
・プログラミングという授業があるわけではない
1-1.小学校におけるプログラミング教育の目的
文部科学省の資料によれば、小学校でプログラミング教育を行う目的は以下の3点にあります。ひとつは、「プログラミング的思考」を育むことです。プログラミング的思考とは、論理的思考力に似た概念で、要するに筋道を立てて物事を理解でき、最適解に近づくために試行錯誤できる能力のことです。
次に、「プログラムの働きや良さ、情報社会がコンピュータ等の情報技術によって支えられていることなどに気付くことができるようにするとともに、コンピュータ等を上手に活用して身近な問題を解決したり、よりよい社会を築いたりしようとする態度を育むこと」も目的のひとつとされます。IT技術が当たり前の世の中では、その仕組みに関する理解が疎かになりがちです。コンピュータが実際にどう動き、どれほど人々の日常生活に貢献しているか、その仕組みや社会的な意義を教えることもプログラミング教育の大きな目的です。
文部科学省の資料には「各教科等の内容を指導する中で実施する場合には、各教科等での学びをより確実なものとすること」ともあります。これは要するに、プログラミング教育を通じて、他の教科の学習効率を高めることができるといったような意味です。たとえば、算数で正多角形を学習する際に、プログラミングで正多角形を作成することによって、正多角形の性質をより理解しやすくなるといった具合です。
このように、小学校におけるプログラミング教育は、プログラミング言語を習得することを目的としているわけではありません。それよりも、プログラミングの考え方や役割、仕組みなどを身につ付けてもらうことに重点が置かれているのです。
1-2.プログラミングという授業があるわけではない
プログラミング学習が必修化されたといっても、国語や算数のように「プログラミング」という科目が創設されたわけではありません。小学校のプログラミング学習は、科目として設けられたものではなく、国語や算数、理科といった従来の科目の中に考え方として取り入れるという形が取られています。特に関連テーマの多い算数や理科で扱われることが多く、正多角形をプログラミングで作成するといった取り組みもそのうちのひとつです。
また、パソコンを使わず、カードやボードゲームを使った授業も多く行われています。もちろん、小学校のプログラミング学習は将来的なIT人材の育成も目的のひとつとしているので、基本的にはパソコンやタブレットといったICT機器を各教科の授業に用いて行うのが通常です。ただ、プログラミング教育の中には、そうしたICT機器を用いない「アンプラクド・プログラミング」と呼ばれる学習方法もあり、そのやり方ではパソコンは使わず、主にカードやおもちゃなどを使ってプログラミング学習を進めます。
いずれにせよ、小学校の段階では「プログラミング」という科目で教えるのではなく、各教科に関連したテーマでプログラミングを学んだり、各教科の内容をプログラミングの考え方の中で深く理解したりといった形が中心です。より本格的なプログラミング学習の機会は、中学校以降に進んでからとなります。
2.小学校のプログラミング教育事例
実際に小学校のプログラミング教育は、どのようにして学んでいるのでしょうか。ここでは、その実例の一つとして、低学年と高学年それぞれで見てみましょう。
2-2.小学校低学年の事例
小学校1年生~3年生までの低学年では、「生活」や「国語」といった教科でプログラミング教育を学んでいます。教育の目標で共通しているのは、『手順(=プロセス)への理解について、プログラミングを通して学ぶ』ところです。それでは、具体的に各教科で見ていきましょう。
■「生活」
手順を考えて実際にプログラミングするという段階的な体験によって、生徒たち自身の日々の行動がいくつかのプログラムの組み合わせで成り立っていると気づけるような内容になっています。
第1段階:「手順」とは何か? どういったことを指すのか?を理解する
第2段階:プログラミング絵本「ルビィのぼうけん」を題材に、登場人物に与える指示について考える
第3段階:「学校に来てからやること」をリスト化し、効率的に行動できるように順序を考える
第4段階:第3段階で考えた順序を隣の席の人と実際に試してみて、無理や無駄がないか検証する
第2段階で、与える一つひとつの指示が「プログラム」に当たり、さらにその指示を考えるというアクションが「プログラミング(=プログラムすること)」に当たることへの理解を深めます。これによって、たとえば次のような日々の行動がプログラムだと気づけるようになっています。
・学校に着いたら、上履きに履き替える
・教室に着いたら、まずは自分の席に行き、ランドセルから教科書やノートを取り出す
・給食の時間になったら、先に机の上を片付けて、手を洗う
こうした学びを通して、プログラミングではどのように指示を出すのか、出す順番や指示する内容も重要だという理解を深められるようになっています。これらは日々の行動の再確認にもなるため、学校生活から日常生活全般においても役立つプログラミング的思考を育てることにもつながります。
■国語
漢字をプログラミングするという体験から、漢字という文字のつくりについての理解を深め、本来持つ意味や成り立ちを考えます。この学習を通し、漢字や言葉への気づきや発見を促すという内容です。
第1段階:ワークシートを用いて新しい漢字を作り出す仕組みについて学ぶ
第2段階:新しい漢字を作るのに必要な構成部品を2つ作る
第3段階:作ったそれぞれの部品を組み合わせて、既存の漢字にとらわれずに一つの漢字を創作する
第4段階:新しく作った漢字を発表する機会を通して、気づきを得る
一つひとつの漢字は、さまざまな部品によって構成され、1つの形になっています。それらの部品には、別の漢字が使われています。たとえば「岩」という漢字は、「山」+「石」の2つの漢字の組み合わせによってできています。このことから、「岩」の漢字は、山にある石から着想を得て作られたことがうかがえます。
ほかの漢字についても同じように考えることで、さまざまな気づきを得られます。たとえば、漢字によっては3つ以上の漢字の組み合わせで成り立つものがあることに気づけたり、組み合わせられるものと組み合わせられないものがあることを知ったりする機会にもなります。また、組み合わせられるものであれば、お互いに何かしらの関連性があるという法則を学べる場にもなっています。
第3段階での学びのポイントになっているのは「既存の漢字にとらわれない」ところです。世の中にはない漢字を作り出しても良いという自由さを与えることで、固定観念にしばられない柔軟な発想力と創造力も育めるようになっているのです。
第4段階では、生徒たちは、発表という機会を通して自分の考えを他者に伝えるために必要な論理的な思考力を鍛えることができます。さらには、ほかの生徒の発表を聞き、自分にはなかった発想に触れるなどして新しい発見や気づきを得ることにもつながり、子どもたちの思考力に良い刺激を与えてくれるでしょう。
2-2.小学校高学年の事例
小学校4年生~6年生までのプログラミング教育では、実際にパソコンを使って日常生活に関連付けた内容で行われます。低学年の間は比較的パソコンを使わずに座学中心に行われていたのが、高学年からはパソコンを取り入れた教育内容にシフトし、コンピュータの仕組みや動作の規則なども並行して学ぶようになっていきます。
■総合的な学習
「順序」と「繰り返し」それぞれの処理についての違いを知ることで、効率性や利便性を学び、無駄や間違いの軽減についての気づきを促します。
第1段階:「進む」「曲がる」といったルールを理解し、処理の違いを学ぶ
第2段階:地図を使って実際にコマを動かし、順序処理の基礎的な方法を学ぶ
第3段階:曲がり角でコマをどのように動かせばいいか、コードを考える
第4段階:4つのカードを使い、同じ動作を繰り返させるにはどうすればいいか、コードを考えさせる
第5段階:処理の違いによってコードの量が変わるという気づきを通して、効率性や利便性について学ぶ
この事例では、「地図」と「カード」の2つの異なる題材が用いられています。これは、題材が違っても本質的な考え方は共通しているという気づきも促すためでしょう。
地図では、「直進」「右折」「左折」などのアクションを取るには、それぞれでどのような処理が必要なのかを学びます。このとき、「順序」「繰り返し」といった処理の基本的な部分についての理解も深めます。
次に、題材を変えることで、地図で学んだ処理の考え方や方法の共通点や応用できる部分を感覚的に学べるようになっています。処理が異なれば、指示するためのコードも変わりますから、コードの量にも変化が出ます。コードが増えれば、そのぶんコードを入力する手間や処理の工程が増えるため、それが無駄や間違いの要因にもなり、効率性や利便性を考える機会にもなります。
処理によってアクションを変えられるというこれらの考え方を生活のあらゆるところに落とし込めば、多くの気づきを得られるようにもなります。たとえば、生活家電の扇風機では、首を振るという繰り返し処理のおかげで、広範囲に涼しい風を送れるようになっています。もしも首を振るという繰り返し処理がなければ直線的な風しか送れず、広範囲に送るための方法を別に考えなくてはなりません。しかし、首振り機能があることで余計な手間が省け、生活が便利になっていることに気づけます。
このような無駄をなくすための工夫は、ほかの場面でも見ることができます。たとえば、車のフロントやリアガラスのワイパーです。スイッチを入れれば左右に繰り返し動いてくれ、これによってガラスについた水滴が取り除けるようになっています。もしも、これが一方向にしか動かせないものであれば、とても不便で安全に雨の中を走れなかったでしょう。
私たちの生活の便利さの背景には、こういった無駄や間違いをなくすための工夫がさまざまなところで施されているのです。この授業では、それらの工夫を発見できる観察力を身につけられるようになることも狙いの一つになっていると推察できます。
■理科
科学的実験を通して、電気を効率よく使うための方法を考え、省エネルギーや電気の有効利用への工夫について学びます。
第1段階:人感センサーを用いたライトを作成する
第2段階:センサーの設定を変えて、電気を有効的に使うにはどうすればいいか方法を考案する
第3段階:点灯時間などの設定をプログラミングし、発表する
電気は、生活インフラの一つですから、小学生にとってもとても身近なものの一つといえます。ですから、日常生活と関連付けて学ぶことによって、生活の中の問題や課題の発見にとどまらず、社会のエネルギーの利活用についても意識を向けるきっかけになるでしょう。
電気を用いた科学実験的学習は従来からあったものの、プログラミングとかけ合わせることで一層深い学びを得るのに役立ちます。
3.小学生がプログラミング言語を学ぶ5つのメリット
小学校では各教科に関連した形でプログラミング教育が実施されるため、プログラミング言語を学ぶ機会は基本的にありません。ただ、IT社会に対応した人材育成のためには、なるべく早いうちからプログラミング言語を学習しておくことは有意義なことです。そこでこの段落では、小学生がプログラミング言語を学ぶメリットを以下の5点に要約して紹介します。
・1.より複雑な仕組みを作れる
・2.自由に創造する楽しさがわかる
・3.ITに強い子どもになる
・4.中学・高校でのプログラミング学習につながる
・5.興味の対象が広がる
3-1.①より複雑な仕組みを作れる
プログラミング言語を活用すれば、より複雑な仕組みを自分で作ることができます。思い通りに仕組みを自分で作ることによって、プログラミングの楽しさを認識することができ、プログラミングに対する理解も深まりやすくなります。もちろん、小学生にプログラミングコードを書かせることは難しく、難易度の高いプログラミング言語を無理に学ばせようとすれば、かえって子どもの意欲を削いでしまうかもしれません。
そこでオススメなのが、視覚的に操作できるビジュアルプログラミング言語です。ビジュアル言語は目で見て理解しやすいプログラミング言語で、遊ぶような要領で始められるため、小学校低学年からでも無理なく始めることができるプログラミング言語だといえます。
3-2.②自由に想像する楽しさがわかる
プログラミング言語を使いこなせるようになれば、自分の考えやアイデアを形にすることもできるようになります。アニメーションやゲームなどを実際に作ることもできるでしょう。自由な発想で創造する楽しさを覚えれば、子どもの創作意欲が刺激されてどんどんプログラミングの楽しさにのめり込むようになります。
3-3.③ITに強い子どもになる
プログラミング言語を扱う場合、パソコンやタブレットなどのICT機器に触れる機会も増えることになります。IT化が進む現代社会において、そうしたICT機器に精通しておくことは将来を生き抜くうえでも大切なことです。将来的にプログラマーになるつもりがなくても、IT機器の使い方やシステムの構造を知っておけば、人生や仕事の選択肢の幅も大きく広がります。特に現代の仕事は、あらゆる場面にプログラミングが活用されています。そのため、プログラミングの知識は、IT業界はもちろん、それ以外の業界でも必要不可欠な知識なのです。
3-4.④中学・高校でのプログラミング学習につながる
プログラミング教育は、小学校だけではなく中学校や高校でも既に必修化されています。小学校の段階では、プログラミングはあくまで他教科を学習する一環として教えられるに過ぎませんが、中学校や高校ではプログラミング言語を使ったより本格的な学習が始まります。そのため、小学校からプログラミング言語に触れておくことは、中学や高校にあがった際の準備として非常に有用です。小学校のうちからプログラミング言語の予備知識を備えておけば、よりスムーズに高度な教育に移行することができるでしょう。
また、2025年には大学入学共通テストに「情報」が追加決定になりました。プログラミング言語を扱えれば入試においても有利に働くことになります。入試問題がどのような内容になるのかはまだわかっていませんが、複数のプログラミング言語を用いた難易度の高い内容になることも予想されます。そのため、将来的に子どもの大学進学を考えているなら、早いうちからプログラミング言語に慣れさせておき、より高度な知識の下地を作っておく意義は大きいといえるでしょう。
3-5.⑤興味の対象が広がる
小学校の授業では主にプログラミングの「考え方」を教えます。それに加えて、実際に言語を使ってプログラミングを実践することによって、プログラミングに対するより深い学びを得ることができます。プログラミング自体をもっと深く知りたいと感じたり、自分のアイデアをプログラミングで表現したいと思ったりすることによって、子どもにとっての興味の対象が広がることも言語を学習するメリットのひとつです。また、普段何気なく使っているモノの仕組みに興味を持つ機会も増えるでしょう。
4.小学生のプログラミング学習の方法
小学生がプログラミングを学ぶメリットを考えると、ぜひ家庭でもサポートしたいと考える保護者の方は多いのではないでしょうか。しかし、プログラミングを教えられる親ばかりではありません。そういったとき、親が小学生の我が子にどうやって家庭内学習を進められるようサポートできるのか。
ここでは家庭内でも取り入れやすい方法を5つご紹介します。
1.書籍
2.アプリ・教材
3.玩具
4.講座・動画視聴
5.イベント・セミナー参加
お子さんの性格や関心に合わせて、いくつかの方法を組み合わせてみるのもおすすめです。
4-1.書籍
最も手軽に取り入れやすい方法が、書籍を使った学習スタイルです。プログラミング言語に関する書籍は大変多く、初心者から上級者まで幅広く揃っています。プログラミング言語とまではいかなくても、プログラミング的思考を育むことを目的にした書籍であれば、近年では、プログラミング授業必修化を受けてなのか、まだパソコンを扱うのが難しいような子ども向けのものまで出てきています。
書籍で学ぶメリットは、やはり自分のペースで進められることと、パソコンを使わなくても学習を進められるところが大きいでしょう。自宅にパソコンがない家庭であれば、なおさらです。まずは、書籍から触れてみて、興味が強くなってからパソコンを用意しても遅くはないでしょう。そういった学習コストの低さも、メリットの一つといえます。
一方で、デメリットもあります。書店に行ってみるとわかりますが、プログラミング言語やプログラミング的思考を育む書籍は大変多いです。それらの中から、子どものレベルや関心に合ったものをピンポイントで探し出してくるのは、なかなか難しいものです。特に低学年であれば、あまりにレベルが違いすぎると、学習を進める前に嫌気が指してしまうかもしれません。そういったリスクを考えれば、親が「易しすぎるかな」と思うくらいのところから始めてみるのが、結果的にモチベーション維持にもつながっていくのではないでしょうか。
その点で、おすすめなのが絵本タイプの書籍です。なかでも「ルビィのぼうけん」は、世界の多くの学校でプログラミング教材としても活用されている絵本ですので、最初に手に取る書籍としてはぴったりといえます。
物語を読み進めながら、勉強という意識を持たずにプログラミング的思考を養うことができるでしょう。そうして、少しずつ書籍の難易度を上げていくようにすれば、子どもも挫折感を覚えにくく、継続的に学びを進めていけるはずです。
書籍を使った学習に向いている子どもの傾向としては、パソコン操作ができない、本を読むのが好き、マイペースで学びたいといった特徴があります。コツコツと勉強することを苦手に感じない子どもにも向いています。
4-2.プログラミング学習アプリ・教材
特徴としては、初学者や初心者向けに開発されたものが多く、ゲームを遊ぶような直感的操作に優れているところが挙げられます。スマートフォンやタブレットなどのモバイル機器でも使えるものも少なくないため、家庭内学習に取り入れやすいでしょう。
ただ、多くのアプリや教材でインターネット環境を必要とするので、環境を整える必要性がある点はデメリットといえるかもしれません。しかし、大半のアプリや教材は無料で利用できるため、総合的な学習コストを考えれば、書籍よりも安価に収められる可能性はあります。
この学習方法の良いところは、実際のアイデアを形にできることです。たとえば、オリジナルのゲームを作ったり、作ったキャラクターを動かしたりといったことが可能です。ゲーム制作を通して、論理的思考、問題解決能力、発想力、創造力などのさまざまなプログラミング的思考を鍛えていけます。また、ゲームを作るには実際にプログラミングを体験しますから、ITにまつわるさまざまなスキルの向上も図れます。
保護者が気をつける事柄としては、適度に休憩を取らせたり、知らない人とのコミュニケーションリスクを教えたりといったことが挙げられます。楽しんで学習を進められるのは素晴らしいことですが、夢中になりすぎて健康を害したり、安全が脅かされたりしては本末転倒です。保護者と子どもで話し合い、楽しく学習していけるルールを作るようにしましょう。
それを踏まえたうえで、おすすめする教材は「Scratch(スクラッチ)」や「Minecraft(マインクラフト/通称:マイクラ)」の2つです。Scratchは、学校で教材としても使われている初学者でも直感的に使えるプログラミングツールです。Minecraftは、ゲームを通してプログラミングを学べるため、子どもにとっても学習を続けやすい要素に溢れています。どちらもチュートリアルが豊富に用意されていることから、初めてプログラミングに触れる子どもでも迷わず始められるはずです。
また、どちらも世界中で人気を集めているものですので、参考書や解説本もたくさんあります。それらを参考にしつつプログラミングスキルを向上させていくことも難しくないでしょう。
こうしたアプリや教材を使った学習に向く子どもの傾向には、まずパソコン操作に慣れていることが挙げられます。スマートフォンやタブレットでも学習できるアプリや教材はありますが、パソコンを使った学習よりも制約されることが多々あるため、やはりパソコンで学習をすることを視野に入れるのがベターです。それに、ScratchやMinecraftなどゲームを作れる教材となると、それなりの性能を持つものが使用機器に推奨されることも少なくありません。こうしたことから、パソコンを扱うことに抵抗感がない子どものほうが、取り組みやすいといえます。
パソコンの基本操作ができれば問題なく使える教材も多いので、基本操作ができてゲームに関心があれば、ScratchやMinecraftは最適な教材となるでしょう。
4-3.プログラミング玩具
書籍もパソコンも苦手という子どもや、まだ読み書きが十分にできない・パソコンに触れたことがないという子どもには、玩具がおすすめです。玩具であれば、勉強という意識を持たずに、遊びを通してプログラミング体験ができるからです。小さいうちから取り入れていけば、学校でプログラミング学習を受けるようになっても苦手意識を持ちにくくなるでしょう。また、プログラミングへの関心を高める機会にもなるため、本格的なプログラミングへと学習内容を発展させやすくなるというメリットもあります。
ほかにも、親子で一緒に楽しめるため、親子間の信頼関係の構築やコミュニケーションにも役立ちます。デメリットがあるとすれば、年齢が大きくなるにつれて、玩具への飽きが出てくることです。プログラミング玩具にはそれぞれ適正年齢が設けられていますので、玩具に関心を持つ年齢であればいいですが、それを超えたときにどうするか、そのときの選択がポイントになってくるでしょう。
とはいえ、プログラミング玩具でプログラミングの楽しさや面白さを知ることができれば、次のステップに進みやすくなるのは確かです。子どもの飽くなき好奇心に火をつけてくれる、そんな玩具を与えてあげられればベストでしょう。
おすすめなのは、知育教材を扱うGakkenが提供する「カードでピピッと はじめてのプログラミングカー」と、ブロック玩具で世界的人気を誇るLEGO®が提供する「レゴ®エデュケーション SPIKE™ プライム」という2つのプログラミング玩具です。前者は低学年向けで、後者は高学年向けになっています。どちらも、プログラミングで命令を与え、実際にモノを動かすという体験ができます。
ただし、「カードでピピッと はじめてのプログラミングカー」は低学年層を対象にしたものですので、本格的にコードを入力してプログラムを組み立てるわけではありません。コードに見立てたカードを並べて命令を与えるため、プログラミング的思考に必要な能力を養うのが目的の玩具になっています。ですから、まずはこうした玩具を使って思考力を鍛えるところから始め、徐々にステップアップしていくと、子どもも苦手意識を持ちにくくなるのではないでしょうか。
この学習方法に適しているのは、勉強やプログラミング学習に対して良いイメージを持っていなかったり、関心が低かったりする子どもです。もちろん、モノを組み立てたり、自らのアイデアで動かしたりして遊ぶのが好きな子どもであれば、夢中になって取り組んでくれることでしょう。
4-4.インターネットでの講座・動画コンテンツ
パソコンも扱えて、プログラミングスキルの習得に意欲的であれば、オンラインの講座や動画コンテンツを教材にするのがおすすめです。インターネット上には、参考になる講座や動画コンテンツがたくさんあるからです。しかも、それらで教えているのは、現役のプログラマーやエンジニア、専門的なスキルを持つ人が多いため、より実践的な知識や技術を身につけることが可能です。
ただし、それらが必ずしも体系的にまとまっているとは限らず、また、目的と内容が合っているかは中身を見てみなければわかりません。そのため、足りない部分は書籍やほかのコンテンツと併用しながら活用するのが望ましいです。この点は、デメリットといえるかもしれません。
一方で、講座や動画コンテンツは、わかりやすい解説があったり、場合によっては講師にダイレクトメールやコメントなどで質問できたりしますから、そういったところはメリットといえます。
講座や動画コンテンツを利用する際は、まず「どんな言語を学びたいのか」、そして「そのプログラムで何をしたいのか」といったプログラミングにおける目的を明確にしておきます。それから、不明点を明らかにし、その解決策になりそうなものを探すという手順を踏むようにすれば、膨大なコンテンツから必要なコンテンツを見つけ出しやすくなるでしょう。
また、講座に限っていえば、マンツーマンやグループワークのような形で開かれているところなど、その形式はさまざまです。体験的に参加できるケースもありますから、いくつか参加してみて、合いそうなところを選ぶのも一つの方法です。
動画コンテンツで最も手軽にアクセスしやすいのは、YouTubeです。検索してみると、実に多くの動画がピックアップされます。無料で視聴できるので、試しにいくつか見てみてから、参考になりそうなものや気になるものをお気に入り登録しておくと、後からでも探しやすくなります。
こうした講座や動画コンテンツを使った学習は、目的ありきでの学習に向いています。そのため、「こういうプログラムの組み方を知りたい」「目的に到達できるようなプログラミングを学びたい」といった明確なゴールがある子どもであれば、スポンジが水を吸収するようにスキルを身につけていけることでしょう。
4-5.イベント・セミナー
最後におすすめするのは、イベントやセミナーでのプログラミング学習法です。学習法とはいいつつも、小学生を対象にしたイベントやセミナーは、比較的「体験として学ぶ」という形を取っていることが多いです。というのも、こうしたイベントなどは定期的に開催されることが少なく、他のイベントと抱き合わせやかけ合わせの形で実施されるケースが少なくないからです。そのため、実施される時期が不定期であったり、単発で終わってしまったりすることも珍しくありません。ほかにも、定員数が決まっていて参加枠に限りがあるなど、こういったところはデメリットになるでしょう。
しかし、他の子どもたちの楽しそうな様子を目の当たりにしたり、その場で質問ができる・すぐに回答がもらえたりするといったタイムロスの少ないレスポンスがあったりなどのメリットもたくさんあります。たとえば、体験している中で少しでもつまずいたり、わからないところがあったりすれば、すぐに教えてもらえるだけでなく、「わかった!」という体験を積ませやすいのも、この学習法の魅力です。
親としてはプログラミング学習を始めさせたいけれど、子ども自身にまだ関心が薄いといったケースでは、子どもの「やってみたい」気持ちに火をつけさせやすい学習法だといえます。
ただし、注意点としては、子どものスキルレベルとイベントのレベルが合っているかどうかの見極めの部分が挙げられます。もしも、子どものスキルレベルと合わないイベントに参加してしまえば、子どもは「できなかった」という体験を得やすく、プログラミングに対して苦手意識や嫌悪感を覚えるきっかけにもなりかねません。ですから、子どもがどの程度パソコンに馴染みがあるかは、重要な指標になります。もしも、まだパソコンには不慣れな子どもであれば、タブレットでできるプログラミング体験を実施しているイベントやセミナーを検討する必要性もあるでしょう。イベントやセミナーによっては、参加する前に主催者に問い合わせできるところもありますから、告知ページなどでぜひ確認してみてください。
イベントとしておすすめなのは「Pepper プログラミング教室」です。無料で参加ができるうえ、実際にロボットのPepperを動かす体験が可能です。自分の作ったプログラムでPepperが指示通りに動くといった体験や、「プログラミング教育 HALLO」では、人気のイベントを多数開催しています。短時間で本格的なプログラミングを学べるだけでなく、開催場所によっては保護者向けの有益な情報を提供する説明会も実施しているので、親子で参加できる楽しいイベントもあります。子どもがITスキルを習得するのに良い刺激になることでしょう。
プログラミングとはどのようなものなのかを体験してみてから、書籍や動画コンテンツなどを利用する学習法に切り替えても差し支えないはずです。まずは「触れてみる」という体験から始めてみると、プログラミング学習への関心を持ちやすくなるでしょう。
5.小学生にはビジュアルプログラミング言語がおすすめ!
プログラミング言語には、コードによって記述するテキスト言語と、視覚的にブロックを組み合わせるビジュアル言語があります。テキスト言語は、世の中にあるさまざまなシステムやWebサイト、アプリなどの構築に使われているプログラミング言語です。ただ、テキスト言語は英語や記号などのテキストを用いたプログラムであるため、言語学習の途上にある小学生が理解するには少しハードルが高いといえます。
一方、ビジュアル言語はプログラムの要素をビジュアル化し、視覚的にわかりやすく取り組めるように作られたプログラミング言語です。テキストを入力することはほとんどなく、簡単なマウス操作でカードやブロックなどを配置するだけでプログラミングすることができます。視覚的に操作することが可能であるため、小学校低学年からでも気軽に始めることが可能です。小学生からプログラミング言語を学習するなら、ビジュアルプログラミング言語がおすすめです。
6.小学生におすすめのビジュアルプログラミング教材8選
ビジュアルプログラミング言語は、視覚的にわかりやすく、遊び感覚で始めることができるプログラミング言語です。ただ、ビジュアルプログラミング言語にも、初心者向けから上級者向けまで多様な種類があります。そこで、ここでは小学生でも理解しやすいおすすめのビジュアルプログラミング言語で教材にもなるものを8つ紹介します。
・1.Python
・2.Viscuit
・3.Scratch
・4.Springin’
・5.Mesh
・6.Blockly
・7.MakeCode
・8.MOONBlock
6-1.Python
プログラミング言語のPythonは需要が高く人気があります。有名なプログラミング教室の「プログラミング教育 HALLO」が採用しているのは、「Playgram(プレイグラム)」という教材で、Pythonへスムーズに移行ができる教材となっています。6歳~高校生までが受講できるため、早い段階からプログラミングに親しめる環境があります。また、Playgramにはビジュアルモードとテキストモードが搭載されているため、本格的なプログラミング言語習得への移行もスムーズです。
6-2.Viscuit
Viscuit(ビスケット)は日本から初めてリリースされたビジュアルプログラミング言語です。小学校のプログラミング教育にも活用されており、スマホやタブレット、パソコンから無料で使うことができます。Viscuitでは、「メガネ」という仕組みを使って描いた絵を自由に動かし、アニメーションやゲーム、絵本などを簡単に作ることができます。文字を入力する必要がないので、プログラミング言語を体験したい子どもにとっては最適なビジュアル言語だといえるでしょう。
6-3.Scratch
Scratch(スクラッチ)は、Viscuitと並ぶ小学生向けの人気ビジュアル言語のひとつです。アメリカのマサチューセッツ工科大学で開発されたプログラミング言語で、主に8~16歳の子どもを対象にデザインされています。非常に簡単な仕組みで作られており、子ども向けのプログラミング言語といえば「Scratch」といわれるほどよく知られているプログラミング言語です。
Scratchは、「命令ブロック」と呼ばれるカラフルなブロックを操作して組み合わせることで感覚的にアニメーションやゲームを作ることができます。ソフトウェアは無料で使うことができ、インストールなどのセットアップも必要ありません。
6-4.Springin’
Springin’(スプリンギン)も文字を使わないビジュアルプログラミング言語のひとつです。Viscuitと同じように、自分で描いた絵を動かせる点に特徴があります。ただ、Springin’には他の初心者向けビジュアル言語にはない機能があります。それが、アプリ内で使えるコインを用いた遊び方です。Springin’では、絵や写真にボタンで条件を付けていくことで、ゲームや絵本などの作品を作ることもできます。そうして構築した作品は、コインを使って売買することができ、プログラミング言語だけではなくマーケティングまで学べる点にSpringin’の特徴があります。
また、マーケットと呼ばれる場所に作品をアップすれば、自分が作った作品を他人に遊んでもらうこともできます。このように、作品の販売や発表を通じて、プログラミング学習のモチベーションを維持しやすいという点にSpringin’の大きな特徴があるといえるでしょう。アプリは完全無料で利用でき、広告も表示されないので、快適にプログラミング言語学習ができる点も見逃せないポイントです。
6-5.Mesh
Mesh(メッシュ)はソニーが開発したビジュアルプログラミング言語です。Meshを利用するためには、まず無線電子ブロックを購入する必要があります。この無線電子ブロックは、Bluetoothでスマートフォンアプリと連動できるようになっています。ブロックを身近なデバイスやWebサービスと連携させることによって、たとえば人が通ったらランプが灯るようにできたり、モーターとつないで車を動かすことができたりするのがMeshの特徴です。
利用に際してブロックの購入こそ必要ですが、実物と連動させて実際にプログラミングが反映される様子を確認できるので、プログラミング学習の面白さをより身近なものとして味わうことができます。
6-6.Blockly
Blockly(ブロックリ―)はGoogleが開発したビジュアルプログラミング言語です。2022年7月現在では日本語に対応していませんが、派生アプリケーションのBlockly Games(ブロックリー・ゲーム)は日本語で楽しむことができます。Blockly GamesはWebブラウザからアクセスでき、パズルのような感覚でプログラミングに慣れることができる仕様となっています。ゲームを遊ぶように手軽にプログラミングが学べるので、小学生でも難しいことを考えず取り組むことができるでしょう。
6-7.MakeCode
MakeCode(メイクコード)はマイクロソフトによるオープンソースのビジュアルプログラミング言語です。ブロックを使った視覚的なプログラミングが学べる一方、JavaScriptのプログラムに切り替えることもできるので、より高度なテキスト言語への移行にも活用できるプログラミング言語だといえます。まずはブロックを使ったビジュアル言語を学びながら、中学校や高校ではテキスト言語を学びたいといった場合にはテキスト言語に切り替えて学習するなど、多様な使い方が可能です。
6-8.MOONBlock
MOONBlock(ムーンブロック)は日本発のビジュアルプログラミング言語です。主にゲームを作ることを前提に開発されており、他のビジュアルプログラミング言語よりゲームやアプリを作りやすい点に特徴があります。もちろん、ブロックを視覚的に動かすだけでプログラミングできるので、簡単に操作が可能な点も見逃せません。また、MakeCodeと同じように、ビジュアル言語でありながらJavaScriptのコードも確認できるので、ビジュアル言語からテキスト言語へのスムーズな移行にも活用できるでしょう。
7.小中学生向けのプログラミング教育ならHALLO
小学校ではプログラミング言語をほとんど学習しません。しかし、小学生からプログラミング言語に触れておく意義は大きいといえます。「プログラミング教育 HALLO」では、個別学習塾で実績のある「やる気スイッチグループ」のメソッドを取り入れた個別最適レッスンを提供しており、ゲーム感覚で楽しく学べる本格的なプログラミング教室です。
採用している教材「Playgram」なら小学生でもテキスト言語を操れます。無料体験が可能なため、まずは気軽に始めてみましょう。
まとめ
小学校でのプログラミング教育は、主にプログラミング的思考を身につけることに重点が置かれています。そのため、プログラミング教育とはいいながらも、本格的なプログラミング言語を扱うことはほぼありません。しかし、中学校、高校、大学と進学するうちに教育内容も技術的な面も学ぶようになっていきます。それらを踏まえると、小学校時代はパソコンの基礎を徹底的に学び、ITスキルの基礎を底上げしておくことは重要でしょう。そういった基礎力向上も兼ねてビジュアルプログラミングを学んでおくと、感覚的にパソコンの扱い方やプログラミング言語への理解も深まりやすくなるはずです。家庭内だけでサポートが難しいと感じる場合は、プログラミングスクールを活用することをおすすめします。
執筆者:プログラミング教育HALLOコラム編集部