# 目次
# プログラミング的思考は役に立つのか
# まず「プログラミング的思考」とは
プログラミング的思考が何かを整理して考える際、子どもたちのプログラミング的思考を養うために何が必要か? 動機づけや学び場づくりの研究より【デブサミ2020】 (opens new window)が参考になります。
一般的に、プログラミング的思考には以下の要素が必要と言われていますが、それらの関係が図示されており、 わかりやすくまとめられています。
- 抽象化
- 一般化
- 分解
- 組み立て
- 分析・評価
引用:子どもたちのプログラミング的思考を養うために何が必要か? 動機づけや学び場づくりの研究より【デブサミ2020】 (opens new window)
# プログラミング的思考を仕事の「段取り」で考えた場合
文部科学省がプログラミング的思考について、再掲します。
小学校プログラミング教育の手引(第三版) (opens new window)では、
自分が意図する一連の活動を実現するために、どのような動きの組合せが必要であり、 一つ一つの動きに対応した記号を、どのように組み合わせたらいいのか、 記号の組合せをどのように改善していけば、より意図した活動に近づくのか、 といったことを論理的に考えていく力
私が「プログラミング的思考」とは何かと考えるとき、「段取り八分」の話が思い浮かびます。 仕事の事前準備の大切さを表す格言で、事前にきちんとした段取りをしておけば、8割方の仕事は完了しているということです。
どんな仕事にも順序があり、仕事が滞りなく進むよう、 似たような作業をまとめたり、作業量が多いときは、みんなで同じように出来るよう手順を整理すると思います。
ただ、仕事の段取りは一度経験したことがあるかも関係するため、教育の題材として扱うには、いささか難があると思います。 その点、プログラミングであれば、自分が考えた順序で実行した結果を直ぐに確認できるため、効率的に学ぶことができます。 また問題個所の見直し(デバッグ)や、より効率的な処理への見直し(リファクタリング)も手軽にできる点も、 プログラミング的思考の題材に向いていると思います。
(関係部署との調整や、落としどころ探しなど、現実の仕事にはロジックではないモノも多々あると考えていますが、それはまた別の話として)
# プログラミング的思考をこどもに説明するとしたら
上記のような仕事の話を、こどもにしてもピンと来ないと思います。 子どもに説明する場合は、以下のコンテンツのほうが理解してもらいやすいと思います。
上記は、NHKの教育番組「テキシコー」に出てくる「ダンドリオン」です。 第一回は掃除のごみ取りを効率よくやりましょうという、業務効率改善をおこなう回でした。
公的機関や企業が発信する情報:テキシコーでも書きましたが、この番組は、思わず頭の中で手順を組み立て、先を予想してみたくなるような興味深い実験、 手順の組み合わせを改善していくことの楽しさを伝えるアニメーション、 さまざまな仕事や物の中にプログラミング的思考が活かされていることを伝えるコーナーなどで構成されており、プログラミング的思考の必要性が直感的にわかるようになっています。