プログラミング

プログラミング的思考と論理的思考のちがいとは?

プログラミング的思考と論理的思考の違い

2020年4月から全国の小学校で本格的にスタートするプログラミング教育。主に小学4~6年生のさまざまな教科のなかで横断的に学習することになります。

プログラミング教育について調べると、

プログラミング教育は、将来にわたる情報社会において、子どもたちが生きていけるように「プログラミング的思考」を身に付け、物事を「論理的に考えていく力」を育成することを目的にしています。

といったことが書かれています。
この文章を読んで次のような疑問を抱く方も多いはずです。

保護者
保護者
「プログラミング的思考」と「論理的思考」はどう違うの?

論理的思考は従来からも使われていた言葉でもあるので、なんとなくイメージをつかめている方も多いと思いますが、プログラミング的思考は言葉自体が初見の方ばかりではないでしょうか。

ナビこ
ナビこ
プログラミング的の「的」ってなにかしら?詳しく知りたいわ!

ということで今回は、プログラミング教育の深掘り編 です。

プログラミング的思考とは?
論理的思考とは?
プログラミング的思考と論理的思考の違い

ナビまる
ナビまる
「~的」って言葉便利だよね。何かお願いするときも「じゃあ、〇〇的な感じでつくってみて~」とか、逆にお願いされたときも「△△的な雰囲気ね、おけまる」みたいに上手くぼかせるし。どんな場面でも使えるから万能薬的な言葉だよね~。 

プログラミング的思考とは何か?

プログラミング的思考とは

プログラミング的思考とは、簡単に説明すると次のようなものです。

プログラミング的思考…情報や技術をうまく活用し、課題や目的を解決・達成するために効率よく考えられる力のこと。

文部科学省による「プログラミング教育に関する有識者会議」では、プログラミング的思考を次のように説明されています。

「プログラミング的思考」とは、「自分が意図する一連の活動を実現するために、どのような動きの組合せが必要であり、一つ一つの動きに対応した記号を、どのように組み合わせたらいいのか、記号の組合せをどのように改善していけば、より意図した活動に近づくのか、といったことを論理的に考えていく力」
小学校プログラミング教育の手引き(第二版)/文部科学省より

つまり、物事の課題を発見し、解決していくまでの道すじを「論理的」に考えられ、かつそれらをコンピュータプログラムの記号や記号の組み合わせで表現できる力のことがプログラミング的思考であると言い換えることができます。

ナビこ
ナビこ
なんとなくだけど「プログラミング的思考」は分かった…気がする。じゃあ、「論理的思考」も教えて!

 

論理的思考とは何か?

小学生の論理的思考

論理的的思考とは、簡単に説明すると次のようなものです。

論理的思考…スタートからゴールまでの筋道を頭のなかで整理・想像し、正しく説明することができる力のこと。

「論理的思考力」とは、道理や筋道に則って思考を巡らせて結論を導いたり、あるいは、複雑な事柄を分かりやすく説明したりできる能力。
論理的思考力/weblio辞書より

英語に直訳するとロジカルシンキングとも呼ばれ、物事を整理して組み立てる力は学校教育だけでなく、ビジネス現場においてもとくに重要な力と考えられています。

とくに近年はインターネットの普及やAIの発達により、分からないことがあればすぐに調べられるため、「知識を持っていることよりも知識を上手く活用できる力」のほうが重視されており、

物事を正しく見通しを立てて整理、組み立てられる力である「論理的思考力」は、これからの社会を生き抜いていくためには必須の力です。ですので、学校教育でもしきりに「論理的思考」が重要であると叫ばれ始めているのです。

 

プログラミング的思考と論理的思考の違い

ここまで「プログラミング的思考」と「論理的思考」を別個でみていきましたが、いまいち違いがはっきりしないという方も多いと思いますので、より詳しく比較していきます。

大まかに図化すると次のようなイメージです。プログラミング的思考と論理的思考の違い

プログラミング的思考は解決までの組み立てと想像

論理的思考が「物事のスタートからゴールまでの見通しを正しく理解する」のに対し、プログラミング的思考は「そのスタートからゴールまでのプロセス(問題の気づき、解決の手段、実践、改善)を組み立てる」ところに違いがあります。

プログラミング的思考はまさしく、課題解決のための具体的な方法を理解し、失敗を積み重ね、何度も繰り返しながら成功までの道筋をつくっていくものです。

その過程で「どのように改善したら良くなるのか」「どう組み合わせたら成功するのか」「次はどうすればいいのか」を想像していくことに意義があり、

やがてそれらの力こそが、将来の情報社会で子どもたちが「生きる力」として確かに身になっていくのです。

ナビまる
ナビまる
プログラミング的思考は大人になってどんな職業についても役に立つものなんだね。

小学校の授業でのプログラミング教育

文部科学省は、学習指導要領のなかで「小学校プログラミング教育のねらい」を次のように定めています。

児童に、「コンピュータに意図した処理を行うよう指示することができるということ」を各教科等で体験させながら、「情報活用能力」に含まれる「プログラミング的思考」の資質・能力を育成する。
小学校プログラミング教育の手引き(第二版)/文部科学省より

今回の小学校学習指導要領の改訂により、「知識及び技能」「思考力、判断力、表現力等」「学びに向かう力、人間性等」という3つの柱で資質・能力を育成するよう授業が実践されるようになります。

プログラミング的思考は、この「思考力、判断力、表現力等」の資質・能力の一つとして、算数や理科などの教科のなかでコンピュータプログラミングを体験しながら伸ばしていきます。

プログラミング言語やアルゴリズム(問題解決の手順を示したもの)といった知識に関わる部分は、小学校では学習のねらいには含まれず、中学校以降の授業で学習することになります。

たとえば小学校の算数では、「正三角形をコンピュータにかかせる」といったように、実際にコンピュータプログラミングを用いて、記号を組み合わせ、正しく作動するか確認し、試行錯誤しながら意図通りの正三角形をかく、といった学習が想定されます。

この一連の、「目的の確認(発見)」「記号の理解、組み合わせ(方法)」「意図どおりの結果(実行)」という失敗を繰り返しながら、目的を達成していくまでの過程こそが「プログラミング的思考」の育成へとつながっていくのです。

 

プログラミング教育について深掘りしたい方はこちらも参照ください。

プログラミング教育必修化の問題点
プログラミング教育が小学校で必修化されることの問題点とは?2020年新課程の小学校プログラミング教育とはどんなものか、その目的やねらい、授業での実践例、学校での問題点についてまとめました。...