STUDY

【機械的に考えろ】プログラミングで鍛える思考法【一度は体験するべし】

2020年から、プログラミング教育が必修化されます。

すなわち、日本の小学生は全員がプログラミングを学ぶようになります。

これは、IT人材が不足しているからという理由だけではありません。

プログラミングで使う思考が、他の勉強にも非常に役立つからです。

今回は、プログラミングの何が勉強に役立つのかを紹介します。

プログラミングとは

プログラミングとは、コンピュータに動作を指示することです。

ものすごく簡単に言えばこの一言にまとまるのですが、指示するためにはとてもたくさんの工程があります。

設計

大まかな処理をフローチャートなどを用いて表します。

どのようにすれば、目的の動作をするかを考えながら設計図を作ります。

コーディング

実際にコードを書いていきます。

多くの人が「プログラミング」と聞いて想像するのは、この場面だと思います。

テスト

実際にコードをコンピュータで実行します。

大抵の場合、思っている通りに処理が実行されることはなく、どこかでエラーが発生します。

修正

テストで発生したエラーの原因を見つけ、修正します。

エラーになっている部分を探すのが、大変な作業です。

形式の変換

コンピュータでプログラムが実行されるように、形式を変換する必要があります。

プログラミング的思考

プログラミングをする上では、プログラミング的思考が必要とされます。

文部科学省は、プログラミング的思考を以下のように定義しています。

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

出典:文部科学省 小学校プログラミング教育の手引(第三版)

本記事では、プログラミング的思考を次の3つに分けて説明します。

  • 論理的思考力
  • 創造性
  • 問題解決能力

では、見ていきましょう。

論理的思考力

プログラミングをするには、必須の力です。

何をどの順番でどのように処理するかを、考えなければいけません。

これは、身近なことにも応用できます。

証明の問題は、論理的思考が要求されるものの典型例です。

「最終的にはこれを示したい」という目的のもと、そのためには何から示していけばいいかを考えます。

問題が複雑で難しくなればなるほど、この力が必要とされます。

創造性

プログラミングというのは、絵画や小説のように、新たなものを創造することに価値があります。

誰かが作ったサービスを真似しても、あまり意味がないのです。

今までは、図工などの教科で創造性が鍛えられていたかもしれません。

しかし、「絵を描くのは苦手」などの理由から、萎縮しがちになっていた子どもも多いでしょう。

プログラミングでは、比較的センスに関係なく、創造することを楽しめます。

問題解決能力

プログラミングにエラーは付き物です。

最初のコーディングより、エラーを解決する時間の方が長いかもしれません。

なぜなら、どこが原因でエラーが発生しているのかも、どう直せばエラーが直るかもわからないからです。

しかしながら、「エラーメッセージ」というヒントが少しだけ与えられます。

プログラマーはこの情報を基にして、調べて、ひとつずつエラーを解決していくのです。

これは、学びの根源であるとも言えるでしょう。

どこに自分の不足があるのかを考え、そこを補充していく。

ただ補充するだけでなく、出来る限り正しい方法で、効率よく補充する。

生きていく上で、非常に大切な力です。

プログラミングのすすめ

プログラミングって、こんなにたくさんのことが身に付けられるんですよ。

しかも、ただ力が身に付くだけではありません。

お金を稼げるようにもなるんです。

すごい魅力的じゃないですか?

今回は、ちょっと気分でセールスショッピングのようになってしまいました(笑)

でも、本当にプログラミングってすごいんですよ。

何よりも、楽しい!

楽しくて、力が身に付いて、お金が稼げる。まさに、一石三鳥です。

ぜひ皆さんもプログラミングを体験してみてください!

最後に

私は、最近すごくプログラミングにハマっております。

すごい楽しいですよ。

プログラミング仲間募集しています!