プログラミング教育の具体的実践 #1～私たちの生活とプログラミングの関係～
国立大学法人 宮城教育大学
教科教育学域（技術科教育）
情報活用能力育成機構 副機構長
教授 安藤 明伸

目次

1. プログラミングで機能を実現する
2. 学習指導要領の情報活用能力に位置づけられるプログラミング的思考
3. プログラミング教育のねらいと分類

1.プログラミングで機能を実現するもしプログラミングせずに実現するには？
モーターの回転を逆にするには？
M• 電池の向きを逆にする• 線のつなぎ方を入れ替える

1.プログラミングで機能を実現するもしプログラミングで実現するならモーターの回転を逆にするには？
M
コンピュータ

M
回路を手動で変えなくてもプログラムを書き直せばよい1.プログラミングで機能を実現するもしプログラミングで実現するとモーターの回転を逆にするには？

コンピュータ

M

回路を手動で変えなくてもプログラムを書き直せばよい

外から見るだけでは動作を判
断できない
見た目は同じでも，様々な動きをする

動かして・試してみないと予想することが難しい1.プログラミングで機能を実現するプログラムで動くコンピュータをいくつも持ち歩く時代にメール，Web，ニュース，SNS，通話，電卓，録音，ゲーム・・・

ENIAC (Electronic Numerical Integrator And Computer) in Philadelphia,Pennsylvania. Glen Beck (background) and Betty Snyder (foreground)program the ENIAC in building 328 at the Ballistic ResearchLaboratory (BRL). 著作者：Unknown author CC表示-public domain
https://ja.wikipedia.org/wiki/ENIAC

A hand holding a Nexus 6 with the Wikipedia mobile homepage
displayed, in an office setting 著作者：Sage Ross CC 表示-継承 4.0
https://ja.wikipedia.org/wiki/%E3%82%B9%E3%83%9E%E3%83%
BC%E3%83%88%E3%83%95%E3%82%A9%E3%83%B3

２.学習指導要領の情報活用能力に位置づけられるプログラミング的思考

情報活用能力• 情報活用能力は，世の中の様々な事象を情報とその結び付きとして捉え，情報及び情報技術を適切かつ効果的に活用して，問題を発見・解決したり自分の考えを形成したりしていくために必要な資質・能力。

情報そのもの ＋ ICT等の情報通信技術 を活用する力
人との会話，テレビ，書籍，新聞等のあらゆる情報
文部科学省：小・中・高等学校の各学習指導要領

２.学習指導要領の情報活用能力に位置づけられるプログラミング的思考

IE-Schoolにおける情報活用能力の要素の例示
A.知識及び技能

１．情報と情報技術を適切に活用するための知識と技能①情報技術に関する技能②情報と情報技術の特性の理解③記号の組合せ方の理解

２．問題解決・探究における情報活用の方法の理解①情報収集、整理、分析、表現、発信の理解②情報活用の計画や評価・改善のための理論や方法の理解

３．情報モラル・情報セキュリティなどについての理解①情報技術の役割・影響の理解②情報モラル・情報セキュリティの理解

B.思考力、 １．問題解決・探究における情報を活用する力
判断力、 （プログラミング的思考・情報モラル・情報セキュリティを含む）
表現力等

事象を情報とその結び付きの視点から捉え、情報及び情報技術を適切かつ効果的に活用し、問題を発見・解決し、自分の考えを形成していく力①必要な情報を収集、整理、分析、表現する力②新たな意味や価値を創造する力③受け手の状況を踏まえて発信する力④自らの情報活用を評価・改善する力
等

C.学びに向かう力、人間性等

１．問題解決・探究における情報活用の態度①多角的に情報を検討しようとする態度②試行錯誤し、計画や改善しようとする態度

２．情報モラル・情報セキュリティなどについての態度①責任をもって適切に情報を扱おうとする態度②情報社会に参画しようとする態度

２.学習指導要領の情報活用能力に位置づけられるプログラミング的思考

IE-Schoolにおける情報活用能力の要素の例示
A.知識及び技能

１．情報と情報技術を適切に活用するための知識と技能①情報技術に関する技能②情報と情報技術の特性の理解③記号の組合せ方の理解

２．問題解決・探究における情報活用の方法の理解①情報収集、整理、分析、表現、発信の理解②情報活用の計画や評価・改善のための理論や方法の理解

３．情報モラル・情報セキュリティなどについての理解①情報技術の役割・影響の理解②情報モラル・情報セキュリティの理解

情報活用の実践力

情報の科学的な理解

B.思考力、 １．問題解決・探究における情報を活用する力
判断力、 （プログラミング的思考・情報モラル・情報セキュリティを含む）
表現力等
C.学びに向かう力、人間性等

事象を情報とその結び付きの視点から捉え、情報及び情報技術を適切かつ効果的に活用し、問題を発見・解決し、自分の考えを形成していく力①必要な情報を収集、整理、分析、表現する力②新たな意味や価値を創造する力③受け手の状況を踏まえて発信する力④自らの情報活用を評価・改善する力
等

情報化社会に参画する態度①多角的に情報を検討しようとする態度

１．問題解決・探究における情報活用の態度②試行錯誤し、計画や改善しようとする態度

２．情報モラル・情報セキュリティなどについての態度①責任をもって適切に情報を扱おうとする態度②情報社会に参画しようとする態度

２.学習指導要領の情報活用能力に位置づけられるプログラミング的思考

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

プログラミング的思考とは，いわゆる『コンピュテーショナル・シンキング』の考え方を踏まえつつ，プログラミングと論理的思考との関係を整理しながら提言された定義
プログラミング的思考 ≠ コンピューテーショナル・シンキング

文部科学省：教育の情報化の手引-追補版p.64

３.プログラミング教育のねらいと分類
プログラミング教育のねらい「プログラミング的思考」を育むこと

プログラムの働きやよさ等への「気付き」を促し、コンピュータ等を上手に活用して問題を解決しようとする態度を育むこと

各教科等の学びをより確実なものとすること

プログラミングの体験を通して文部科学省，小学校段階における論理的思考力や創造性，問題解決能力等の育成とプログラミング教育に関する有識者会議，小学校段階におけるプログラミン
グ教育の在り方について（議論の取りまとめ）平成28年6月16日をもとに安藤が作成

３.プログラミング教育のねらいと分類
3つのねらいの前提として•••••児童がプログラミングに取り組んだり、コンピュータを活用したりすることの楽しさや面白さ、ものごとを成し遂げたという達成感を味わうことが重要。
「楽しい」だけで終わっては十分ではないが、まず楽しさや面白さ、達成感を味わせることによって、プログラムのよさ等への「気付き」を促し、コンピュータ等を「もっと活用したい」、「上手に活用したい」といった意欲を喚起。
このためには、学習指導要領に示すとおり、児童がプログラミングを「体験」し、自らが意図する動きを実現するために試行錯誤することが極めて重要となる。
人間は、みずみずしい感性を働かせながら、どのように社会や人生をよりよいものにしていくのかなどの目的を考え出すことができ、その目的に応じた創造的な問題解決を行うことができるなどの強みを持っている。
こうした人間の強みを伸ばしていくことは、学校教育が長年目指してきたことでもあり、社会や産業の構造が変化し成熟社会に向かう中で、社会が求める人材像とも合致するものとなっている。

文部科学省：小学校プログラミング教育の手引（第三版）、小学校段階における論理的思考力や創造性、問題解決能力等の育成とプ
ログラミング教育に関する有識者会議：小学校段階におけるプログラミング教育の在り方について（議論の取りまとめ）３.プログラミング教育のねらいと分類
教育課程内のプログラミング教育
学習指導要領に例示されている単元等で実施するもの（算数「第5学年」B図形(1)正多角形，理科「第6学年」A物質・エネルギー(4)電気の利用，総合的な学習の時間：情報に関する探究的な学習）

学習指導要領に例示されてはいないが，学習指導要領に示される各教科等の内容を指導する中で実施するもの
教育課程内で各教科等とは別に実施する時間
クラブ活動など，特定の児童を対象として，教育課程内で実施するもの
教育課程外のプログラミング教育
学校を会場とするが，教育課程外のもの
学校外でのプログラミングの学習機会
文部科学省：プログラミング教育の手引

https://miraino-manabi.mext.go.jp/

https://miraino-manabi.mext.go.jp/

まとめ プログラミングは特殊技能ではなく，表現手段や，問題を解決するための1つの選択肢
 プログラミングされたものは，動作させてみないと得られる結果がわからない
 プログラミングを通してコンピュータそのもの、コンピュータを利用する
社会のしくみの理解につながる プログラミング的思考は，学習の基盤としての情報活用能力なので，あらゆる学習場面で発揮できる
 その前提として，楽しい，面白い，達成感を。そして「もっと活用したい」，「上手に活用したい」といった意欲を喚起
 無料で独学できるプログラミングの基礎的な知識・技能https://hourofcode.com/jp/learn
https://blockly.games/?lang=ja