先日、論理的思考について、分かりやすく説明してみました。
論理的思考とは、物事を要素分解し、順番立てて考える能力ですと説明しましたので、気になる方はこちらの記事をご覧ください。
では、続いて論理的思考を身に付けたいとした場合、どのような方法があるのかを考えてみます。
もっとも良いのは、物事を順番立てて考える訓練をする事でしょう。
極端に言えば、なんでもいいはずです。
例に挙げた、歯の磨き方でもいいですし、片付け方、着替え方、料理の仕方、などなど日常起こる事ならなんでもいいと思います。
ただ、それだと続かないでしょう。日常の行為は無意識で行なっている場合が多く、いちいち意識的に立ち止まって行うのは、脳にストレスを与える事になります。
小学生の場合、学校の授業や宿題でも身につきます。
例えば、国語の授業で「作者の気持ちを表す言葉を抜き出しなさい」などという設問があったとします。
この場合ですと、対象となる文章を段落という要素に分解して、それぞれの要素が何を表すのかを読み取って問題を解くはずです。
プロセスさえ分かってしまえば、このようなケースでも論理的思考は身につきます。
同様に、理科でも社会でも応用できるでしょう。数学なんかはバッチリいけますね。
学校のテストで点数のいい子どもたちは、もしかすると自然と論理的思考を身に付けたのかもしれません。問題を解く、という事自体が論理的思考と密接な関係があるからです。
では、プログラミングが論理的思考を身に付けるのに適していると言われているのはなぜか、説明したいと思います。
プログラミングは、基本的に書かれた順番に命令が実行されていきます。
書かれた順番を入れ替えると、違うプログラムになるので、「順番立てて」という点では非常にマッチしています。
学校の授業や宿題などの問題は、答え合わせするまで当たっているか分かりません。
また、答えが出た後だと問題を解こうとするモチベーションが下がります。
プログラミングでは、命令通りにいかない場合、手を動かしてあれこれやってみる事ができます。
プログラムし直して確認し、うまく言っていなければ他のプログラムを試すというトライアンドエラーが簡単にできるのです。
そのプロセスで、ダメだった方法とうまくいった方法を経験として蓄積できるので、頭と体で身に付ける事が出来るというわけです。
一例を紹介しましょう。
キャラクターを右に動かしたいとします。
スクラッチというビジュアルプログラミングツールでは、あらかじめ決められた命令を組み合わせてプログラムします。
この場合、「右に向ける」「x座標を10ずつ変える」「右矢印キーが押されたなら」を組み合わせる事が出来そうです。
正しい順番は、
「右矢印キーが押されたなら」
「右に向ける」
「x座標を10ずつ変える」
となりますが、間違えて
「右に向ける」
「x座標を10ずつ変える」
「右矢印キーが押されたなら」
という具合に、「右矢印キーが押されたなら」を一番最後にすると、矢印キーが押される前にキャラクターは右に動いてしまいます。
こうしたプログラムを何度か組むと、順番通り並べなければならない事を理解でき、要素についても把握する力が身につくのです。
ツクルでは、作るゲームをプレイして観察するところから始めます。
そうする事で、要素の理解や日頃の物事を観察する目を養う事が出来ます。
2020年から始まるプログラミング教育に関しても、論理的思考は重要なポイントとなります。