2022年度から、高校でプログラミング教育が必修になります。プログラミングというと、アプリやゲームを作るプログラマーだけに必要な技術だと思う人もいるかもしれません。しかし、今後はそれ以外の仕事に就く人も、高校で必ずプログラミングを学ぶことになるのです。
なぜ、こうしたプログラミング教育の必修化が決まったのでしょうか。また、高校のプログラミング教育では何をどのように学ぶのでしょうか。詳しく解説していきます。

プログラミング教育必修化の狙いと背景~予測困難社会に対応する力を育成

そもそもプログラミングとは、コンピュータに意図した動作をさせるための指示を「プログラミング言語」を使って設計することです。具体的には、アプリやゲームの制作、ロボットの開発などでプログラミングが行われています。
高校におけるプログラミング教育の必修化は、2020年度から施行された新学習指導要領に基づくものです。より具体的には、共通必履修科目「情報I」が新設され、プログラミングのほかにも、ネットワークや情報セキュリティ、データベースの基礎などについて学習することが定められています。小学校では2020年度から、中学校では2021年度から新しい指導要領が適用されていますが、高校では2022年度に新入学した生徒からが対象です。
小学校・中学校・高校でプログラミング教育を必修にした目的は、子どもたちがこれからの時代を生き抜くために、情報や情報技術(IT)を主体的に活用できる力=情報活用能力を身に付けられるようにするためです。IT化やグローバル化が急激に進み、将来の予測が難しくなっている現代においては、学校生活や仕事、家庭生活の中で、思いもよらない問題が起こることも少なくありません。そうした予測困難な問題は、過去の経験をもとに解決することが難しくなっています。そこで、コンピュータなどの情報機器やITサービスと、それらを使って得られた情報を適切に活用して、問題解決することが求められているのです。
こうした情報活用能力を身に付けるために、プログラミング教育が必要である理由は2つあります。

1.コンピュータの仕組みを理解するため

プログラミング教育を通じて、コンピュータの仕組みを理解できるようになります。
現在の小学生・中学生・高校生が社会に出て働く頃には、IT系の仕事をする人以外も、仕事の中でAIやロボットなどのITを活用することが欠かせなくなると考えられています。これから少子高齢化がいっそう進行し、働き手が減少していくことが予想される中で、人の手で行ってきた一部の仕事をITに置き換える必要が出てくるためです。その際、次々に登場する新しいIT技術に対して「便利そうだから何となく使ってみよう」「みんなが使っているから試してみよう」という受動的な姿勢で接していては、それらを効果的に活用することは難しいでしょう。主体的・積極的にITを使いこなすためには、コンピュータが動作する基本的な仕組みを理解すること、つまりプログラミングを学ぶことが不可欠になります。

2.問題発見力や問題解決力を身に付けるため

コンピュータの仕組みを知った上で、実際にITを効果的に活用できる力も身に付ける必要があります。それが、問題発見力や問題解決力です。プログラミングを学ぶ過程では、エラーが出てしまったり、意図したように動かなかったりといった問題が発生した際に、その原因を特定し、解決策を論理的に導き出す必要があります。そうした試行錯誤の中で、問題発見力や問題解決力を育てることができます。

プログラミング必修化の影響~大学入試の方法が変わる可能性も!

高校でプログラミング教育が必修化することで、学校の授業が変わるだけでなく、次のような影響があると考えられています

大学入学共通テストの出題教科の変化

2025年より、大学入学共通テストの出題教科に「情報」が新設されることが検討されています。当面はマークシート式での出題が予定されていますが、将来的にはPCやタブレットを使った解答形式になる可能性もあります。
この出題科目の変更により、大学によっては受験科目に「情報」が新たに追加されるケースも出てくるでしょう。

全国学力テストなどでCBT方式が導入される

全国学力・学習状況調査(全国学力テスト)や大学入学共通テスト(情報以外の出題教科を含む)で、CBT方式の導入が検討されています。CBTとは、パソコンやタブレットで解答するテストのことです。
これらを受け、学校内の試験の形式もCBT化する可能性もあるでしょう。

高校のプログラミング教育では何をする?ゲームやWEB制作など授業例を紹介!

新学習指導要領で必修化する高校のプログラミング教育では、実習を交えながら、主にアルゴリズム(問題を解決するための方法や手順)の表現や、プログラミングの方法を学びます。
実際にどのような授業が行われるかは未知数ですが、必修化前の高校のプログラミング教育では、次のような授業が行われていました。いずれも、プログラミングが生活の中でどのように活用されているかをイメージしやすく、楽しみながら取り組めるものになっています。

【例1】ドリトルを使ったゲームプログラム作成

教育用プログラミング言語であるドリトルを使って、簡単なゲームプログラムを作りながら、アルゴリズムの基本を学ぶ授業が行われています。
例えば、画面上でカメの形のオブジェクトが時間経過で少しずつ移動するようにしながら、キーボードの左右キーでカメを方向転換できるようにしたり、さらに障害物を設置して、カメがぶつかったときに跳ね返るようにしたりといったプログラムを設計します。
ドリトルでは日本語でプログラムを書けるため、プログラミングが初めてでもあまり抵抗を感じずに、プログラミングの仕組みや考え方を学べるのが特徴です。

【例2】JavaScriptを使ったWEBプログラミングの学習

HTMLやCSSといったマークアップ言語や、プログラミング言語のJavaScriptを学び、WEBサイトの仕組みを理解できるようになることを目指す授業です。
例えば、JavaScriptを使って、コンビニやスーパーのレジ打ちをイメージした、買い物の税込合計金額を表示させるプログラムを作る実習が行われています。最終的には、HTML、CSS、JavaScriptを使って、自分の好きな事柄を紹介するWEBサイトを制作します。