こんにちは。Tech TeacherのKids Blog編集部です!
みなさんは、こんなお悩みをお持ちではないでしょうか?
「プログラミング教育が必修化されたけど、よく分からない……」
本記事ではそんな方に向けて、小中高別のプログラミング教育について一からご説明しています。
また、プログラミング教育に疑問や不安を抱くみなさんのために、プログラミング教育に関するQ&Aもまとめてあります!ぜひお読みください。
プログラミング教育とは?目的と必要性
プログラミング教育の目的
プログラミング教育と聞くと、情報の授業や、パソコンを使った授業を想像するでしょう。
しかし、実際のプログラミング教育とは、パソコンを使った教育を指すのではなく、必ずしも「情報」の授業で行われるわけではありません。
また、プログラミングが必修化したからといって、学校のカリキュラムに「プログラミング」という専門の科目が加わるわけでもありません。
プログラミング教育とは、従来の学校の授業の中で、「プログラミング的思考」を身につけるための教育をすることを意味します。
たとえば、小学校では、算数や図工など様々な教科に、思考力を鍛えるプログラミング教育が取り入れられています。
では、ここで言われる「プログラミング的思考」とは、何なのでしょうか?
プログラミング的思考とは、「課題の解決に向けて論理的に考える力」です!
言い換えると、
- 作業の順序を考える力
- 効率的に物事を考える力
を身につけることが、プログラミング教育の目的になっています。
プログラミング的思考については、こちらの記事で詳しく解説しています。
プログラミング教育の必要性
こんな風に思う方のために、プログラミング教育で身につく力をご紹介します!
- プログラミング的思考:論理的思考
- 言語化能力:自分の考えを言葉にして他の人に伝えられる力
- 課題解決能力:問題を見つけて、それの解決方法を見つけられる力
- 情報活用能力:情報を利用してアイデアを生み出し、実行する力
- 現代社会で使われている技術に対する理解
これらの力のうち、プログラミング的思考と言語化能力は、小学校のプログラミング教育から身につくと言われています。
中学生からは、課題解決能力や現代社会で使われている技術に対する理解を、高校生になったら情報活用能力を身につけることができます。
それでは、プログラミング教育でどのようにしてこれらの力が身につくのか、小中高別の具体的な教育内容と併せてご説明していきます。
小学校のプログラミング教育
2020年度から必修化された小学校のプログラミング教育は、算数・図工・理科など、様々な教科で行われています。
具体的に何年生からプログラミング教育を始めるかは、文部科学省の新学習指導要領に明記されていないため、学校によって異なります。
ただ、教科書の内容などから、ほとんどの小学校では、5,6年生の算数と理科でプログラミング教育が始まると考えられています。
小学校のプログラミング教育の必修化について詳しく知りたい方には、以下の記事がおすすめです。
小学校のプログラミング教育の具体的な内容
引用元:Scratch公式サイト
ここでは、算数の正多角形の作図を例に、小学校のプログラミング教育の内容を見ていきましょう。
この授業では、プログラミング言語のScratch(スクラッチ)を使って、正多角形の作図をします。
「90度左に回転させる」や「10㎝進む」のような命令がブロックを組み合わせて、正多角形の作図をします。
これにより、作業の順序を考える力、どうやったら少ない命令数で作図できるかを考える論理的思考が身につきます。
他の子供たちと話し合いをする中で、自分の意見を言語化する能力が身につくのも、小学校のプログラミング教育のいいところでしょう。
Scratchについては、こちらの記事で詳しく解説しています。
中学校のプログラミング教育
中学校のプログラミング教育は、2021年度から全面的に実施されており、技術家庭科の項目になっています。
実は、中学校でのプログラミング教育は、2011年度から必修化されていたのですが、新学習指導要領では、プログラミングに関する記述が増えました。
中学校では、複数の情報を用いて、生徒自身が能動的にプログラミングを行う学習が実施されています。
また、ネットワークを用いた双方向的なコンテンツプログラミングも取り込まれ、具体的な課題の解決を中学校のプログラミング教育の目的としています。
中学校のプログラミング教育の具体的な内容
文部科学省が公表をしている「中学校技術・家庭科(技術分野)におけるプログラミング教育実践事例集」の事例をひとつご紹介します。
お掃除ロボットに込められたプログラミングの工夫を探ろう
この授業では、お掃除ロボットのソフトウェア開発を疑似的に体験するため、プログラミング言語「Scratch(スクラッチ)」を使用した「お掃除ロボット シミュレータ」が用意されています。
実物のお掃除ロボットの動きを動画で見た後に、シミュレータ内のお掃除ロボットの動きを修正・改善するという授業内容になっています。
プログラミング言語を使用するなど、中学校のプログラミング教育では、より技術的なところを勉強することになります。
しかし、プログラミングの技術を身につけることが目的ではなく、お掃除ロボットの動きの修正・改善を通して、課題解決能力を身につけることが目的とされています。
お掃除ロボットのソフトウェア開発を疑似体験することで、現代社会で使われている技術を理解することもできます。
高校のプログラミング教育
高校では、2022年から、プログラミングの内容を含む科目「情報Ⅰ」が必修となります。また、選択科目として「情報Ⅱ」も設置されます。
高校のプログラミング教育で重視されているのは、情報を活用する能力です。
小学校、中学校でのプログラミング教育を基盤とし、高校でさらに情報活用能力を深めることが望ましいとされます。
ここには、子供たちに基礎的なプログラミングの知識、論理的な思考力、知識と情報を活用する力を備えてほしいという文部科学省の狙いがあります。
高校のプログラミング教育の具体的な内容
高校のプログラミング教育では、プログラミング言語についても本格的に学習します。
新学習指導要領には、言語の指定がないため、各学校が教科書に掲載されている言語の中から教えるものを選択します。
「情報Ⅰ」の教科書には、「Python(パイソン)」や「JavaScript(ジャバスクリプト)」といった言語が掲載されています。
高校でのプログラミング学習の例として、Pythonを使った「ライフゲーム」作成が挙げられます。Pythonの開発環境で、社会現象や自然現象をモデル化した「ライフゲーム」を作成する授業です。
この授業では、目的を実現させるためのルールを設定する力と、それを実現するプログラミングスキルが身につきます。
ライフゲームの作成後は、プログラムの出力の確認や修正、改善を行います。
このように、目的を踏まえ、プログラミング言語の知識を活用してゲームを作成するという、情報活用能力が身につく構成の授業になっています。
Pythonについては、こちらの記事で詳しく解説しています。
プログラミング教育のQ&A
ここまでプログラミング教育について解説してきましたが、まだ疑問が残っていることでしょう。
そこで、プログラミング教育に対する様々な疑問にお答えしていきます!
プログラミング必修化|保護者がやった方がいいことは?
Q プログラミング教育が必修化しましたが、保護者が子供のためにやれることはありますか?
A お子さんが学校で学んでいることを、定期的に聞いてあげましょう。
え、そんなことでいいんですか?
そう思われるかもしれませんが、これだけで大丈夫です。
学校で学んでいることを聞いてあげることで、お子さんが授業の内容をアウトプットをすることができます!
アウトプットによって、分かっていない部分が明確になったり、知識を定着させられたりするので、お子さんに定期的に学校で習ったことを聞いてあげるといいでしょう。
プログラミング教育の問題点は?
Q プログラミング教育の問題点は何ですか?
A プログラミング教育の問題点は3つあります。
1つ目は、プログラミング教育のカリキュラムが明確ではないことです。
2つ目は、学習環境が整っていない学校があることです。
3つ目は、プログラミングの知識がある教員が不足していることです。
1つ目のプログラミング教育のカリキュラムが明確ではないことについて解説します。
特に小学校のプログラミング教育は、カリキュラムを決めるところから学校がやらなければならないので、負担になっています。
プログラミング教育を何の教科に組み込むのか、何年生から始めるのかなどが、地域や学校によって異なっているのが現状です。
2つ目の学習環境が整っていない学校があることについて解説します。
プログラミング教育に必要なものには費用がかかるため、学習環境の整備ができていない学校があります。
具体的には、電子機器や教材の用意、ネットワーク環境の整備の費用が挙げられます。
1つ目と2つ目の問題点は、通う学校によって子供たちに差が出てきてしまうことにつながるので、できるだけ早く解決する必要があります。
3つ目のプログラミングの知識がある教員が不足していることについて解説します。
プログラミング知識のある教員が不足しているため、中学校や高校のパソコンを用いた授業を専門知識のない教員が教える可能性があります。
学校や教員側の負担をどう減らしていくかも現状の課題となっています。
文部科学省はこれらの問題に対して、教員の再配置や採用など指導体制の充実に努めると説明しています。
最後に
今回は、プログラミング教育についてご紹介しました。
子供たちのプログラミング教育を支えるためにも、まずは自分からプログラミング教育について理解していきましょう!
最後までお読みいただき、ありがとうございました。