2022.12.15 【プログラミング的思考って?】
日々、スクラッチというプログラミングを
自分の手で試しながら動かしているShinjuです。
さて今日は日常に潜む「プログミング的思考」について。
○プログラミング的思考?
実は世の中の多くのものはプログラムの中で動いています。
携帯のアプリ、電子決済システム、PCの中身もそうです。
これらの仕組みをカタチにするために必要なのが
今学校でも指導されつつあるプログラミング的思考。
簡単にまとめると5つのステップがあります。
1.分解;小さく分けて考える
2.組み合わせ;手順の組み合わせを考える
3.一般化;パターンを見つける
4.抽象化;大事なものだけ抜き出して考える
5.シミュレーション;頭の中で手順をたどる
これらの流れを通じて、あらゆるものが自動化されたり
機械化され、暮らしやすい世の中になります。
○事例1.郵便配達
配達員が郵便を届ける前に、必ず行う「組立」という作業。
これは郵便物を配達原簿という表を
参考にして並び替えることをいいます。
この表のおかげで家の場所や一方通行など
交通規制まで考慮して作られることで、
一筆書きのように担当地域を回ることができるのです。
行ったり来たりすることを防ぎ
配達の最短ルートを導き出します。
つまり「手順の組み合わせ」や「シミュレーション」
を活かしたプログミング的思考です。
○事例2.花火づくり
夏に打ち上げられる花火。
最近では打ち上げる花火のタイミングを計算し
音楽に合わせた花火大会もありますが、
花火自体もプログラミング的思考を活用したもの。
花火というのは大きく分けて2つのもので出来ており、
色を出して光る「星」と花火を破裂させる「爆薬」があります。
花火職人は花火の広がりをイメージして、
「星」と「爆薬」の組み合わせを決めていきます。
花火の断面を見たとき、内側から緑、赤、青に
光る星を並べ、その間に爆薬を挟んでみること。
大きな花火玉の中に、小さな花火玉を入れてみること。
花火はさまざまな「組み合わせ」ができるプログラムなのです。
いかがでしょうか。
身の回りにはあらゆるプログラムがあります。
普段の段取りや最適化もその一つかもしれませんね。
それでは素敵な1日を!
編集:Shinju