crefus金沢校

2019.03.28
ブログ

プログラミングを学ぶメリット【プログラミング的思考】

こんにちは、松田です。

ただいまクレファス は春休み期間ということで、少し寂しい思いをしております…。(笑)

春休みが明けて、みなさまのお土産話を聞くことを楽しみにしています。

今日は、プログラミング教育についての話をしたいと思います。

プログラミング思考とは

プログラミング的思考ってご存知でしょうか?

「プログラミング的思考」とは、コンピュータやプログラミングの概念にもとづいた問題解決型の思考を指します。

例えば、コンピュータで処理する対象を細かくして実行しやすくしたり、処理を実行するために、条件分岐や繰り返しを用いたりします。大きなプログラムを開発するには、まず処理を細かな単位で分割していく必要があるのです。

この考え方は、社会問題の解決においても同様に活用することができます。複雑な問題を小さな単位に分解して解きやすくしたり、問題となっている部分を適切に取り上げるなど、現実社会での問題解決に応用可能な思考です。

小学校教育におけるプログラミング的思考について

文部科学省から発表されている「小学校プログラミング教育の手引き」を見ると、小学校プログラミング教育のねらいに【プログラミング的思考】の育成が含まれています。

文部科学省は、プログラミング的思考を下記のように述べています。

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

プログラミング的思考は、論理的に考える力と言えるでしょう。

小学校プログラミング教育の目的は、プログラミング言語を覚えたり、コーディングをすることでありません。

プログラミングを通して、「論理的に考える力」を育成することにあるのです。

プログラミング的思考を支える4つの要素

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

・分解

・抽象化

・一般化

・組合せ

の大きく4つの要素に分けることができます。

分解

大きな動きを解決可能な小さな動きに分けること。特に複雑な問題の場合には、解決できる小さな問題に分解して、問題を解決しやすくすること。

抽象化

目的に応じて適切な側面・性質だけを取り出すこと。

一般化

ものごとの類似性や関係性を見い出すこと。さらに、その類似性・関係性を別の場合でも利用できる内容にすること。一般化することで、汎用的に問題を解くことが可能になります。

組合せ

目的に合わせて試行錯誤しながら、明確でより良い手順を想像すること。組合せ方法には「順次」、「繰り返し」、「条件分岐」などが含まれます。

プログラミング的思考の必要性

ものごとには「目的」と、それにたどり着くまでの「過程」が存在します。

そのことを意識して行動できるかは、社会を生き抜く上で重要なポイントと言えるでしょう。

「目的」と「過程」を明確にすることで自分の考えを論理的に処理できるようになれば、他者に自身の考え方を伝えることも、他者の考えを的確に受け取ることも簡単になり、より高度なコミニュケーションが可能になります。

「プログラミング的思考」は自分自身のためではなく、人と人とが良質な関係を築くための有効な手段の一つなのです。

人気の記事