プログラミング的思考とは何でしょうか。
なぜ、プログラミング的思考がこの時代必要になっているのでしょうか
プログラミング的思考とは
子供たちに、コンピュータに意図した処理を行うように指示することができるということを体験させながら、将来どのような職業に就くとしても、時代を超えて普遍的に求められる力としての「プログラミング的思考」などを育成するもの
小学校段階におけるプログラミング教育の在り方について(議論の取りまとめ)より引用。
ここで、気をつけていただきたいのは、プログラミングする事、コーディング(プログラミング言語を用いた記述方法)とプログラミング的思考は似ているけれども、違います。
よく言われている事として、
小学校段階におけるプログラミング教育については、学校と民間が連携した意欲的な取組が広がりつつある一方で、コーディング(プログラミング言語を用いた記述方法)を覚えることがプログラミング教育の目的であるとの誤解が広がりつつあるのではないかとの指摘もある。
小学校段階におけるプログラミング教育の在り方について(議論の取りまとめ)より引用。
実際に、パソコンの前に座って、プログラミングをしなくても、日常にプログラミング的思考は溢れています。
では、まず、プログラムとは何でしょうか
プログラムとは
プログラムとは、予定(表)、計画(表)、課程、式次第などの意味を持つ英単語。ITの分野では、コンピュータに行わせる処理を記述したコンピュータプログラムのことを略して単にプログラムということが多い。
e-wordsより引用
身近なところだと、運動会や結婚式など、「プログラム」が組まれていると思います。
そして、プログラム通りに進行していきます。
いきなり、開会式をやらず、閉会式をやることなんてないですよね。
プログラムがあるからこそ、うまくいくわけです。
これをIT機器にやツールを組み合わせてみるとどうなるでしょうか。
身近なプログラム的思考
例えば、リマインダー。
15時に打ち合わせがあるとします。参加者は5人です。忘れないように、1時間前にリマインドするとします。
14時にリマインドのメールを送るために、自分自身を含めず、4人にメールを送ります。
・個別に4人に送信する。
・4人同時に送信する。
・14時になったら、自動的に4人にメールを通知する
など、ちょっとした仕事の例ですが、人によって、対応が違いますし、労力も違います。
何気ない一場面ですが、立派なプログラミング的思考を使っています。
もっといえば、迷路。
5歳の子どもが迷路の問題が好きです。
行き止まりになったら、分岐に戻る(条件)
違う道を試す。この繰り返しです。
プログラミングは順序、条件、繰り返し、この3つで成り立っていますが、迷路はどれも満たします。
身近なところにプログラミング的思考は応用できます。パソコンの前に座ってコーディングをするだけがプログラミング的思考ではありません。
そして、迷路では、たくさんの試行錯誤をします。
この試行錯誤がすごく大事です。