プログラミング的思考とは何か?!
プログラミングといえば皆さんイメージできると思いますが、プログラミング的思考といわれてイメージできる人は少ないかもしれません。
結論から言ってしまうと、プログラミング的思考とは失敗と修正を繰り返しながらゴールを目指す思考です。
プログラミングをやっていると、すぐにエラーであったり途中で詰まったりして失敗を抱えることになります。
この失敗が続くのが嫌で、プログラミングをやめてしまう人が多いです。
ただ、失敗はプログラミングにつきものです。
途中でつまづき、悩むことがプログラミングからはきっても切り離せないものです。
この失敗を修正し、正しい方向へ向かったとしても、すぐに失敗、エラーが起こってしまいます。
そして、また修正しなくてはいけなくなります。
これの繰り返しがプログラミングであり、その考え方がプログラミング的思考ということになります。
プログラミングが小学校で必修化に!
小学校で行われる授業では専門的なプログラミングの言語を使うのではなく、命令が書かれた「ブロック」を組み合わせることでキャラクターを動かすアプリなどが使われています。
流石に小学生からコードを書くというのは難しいと思うので、命令がすでに作られていて、それを組み合わせてキャラクターを動かすという仕組みになっています。
ただ、これは簡単そうに思えますが、難しいと思います。
実際にどのようなアプリがあるのでしょうか。
例えば、画面上の水槽に魚がいて泳ぎ続けられることを目指すアプリがあります。
当然泳ぎ続ければ、画面の端の壁にぶつかってしまいます。
プログラミング的思考だと「左に行き、壁に当たったらひっくり返って右に行き、壁に当たったらひっくり返る、を繰り返す」といったイメージを最初に持っておけるとスムーズに作れるのではないでしょうか。
ただ、小学生で初めて作る場合はイメージできない子も多いでしょうから、実際にブロックを並べてみて、上手くいかなかったら修正してを繰り返すということになります。
これはまさしく、プログラミング的思考ですね。
プログラミング的思考が、困難な大きな問題に立ち向かうのに役立つ?!
プログラミング的思考で考えると、壁にぶつかったときにすぐ諦めてしまったらそこで終わりということになってしまいます。
途中で考えることをやめてしまえば、一向に先に進めないということになります。
人生とは問題の連続です。
それを解決するには考えて試行し、修正しを繰り返すしかないです。
まさにプログラミング的思考とは人生を生き抜く上で必要な考え方なのですね。
こういった考え方を小学生のうちから身に付けられると、壁にぶつかったときに乗り越えていけるのではないでしょうか。