2020年から小学校で導入されるようになったプログラミング教育について、今回はプログラミング教育を通じて育つ3つの能力についてお話していきます。
目次
プログラミング教育で身につく3つの能力とは?
プログラミング教育では「プログラミング的思考」を育むことが大きなねらいとされています。
プログラミング的思考については以前の記事でも解説をしていますが、あらためて要点を見ていきましょう!
プログラミング的思考とは上記の2つの考える力のことを言います。
一般的に、1つ目の1つ1つ順序立てて考える力のことを「論理力(論理的思考)」、2つ目の問題を改善していく力を「問題解決能力」と言われています。
プログラミング教育では主にこの2つの力を育てていこうという目論見があります。
また、これだけでなく、プログラミングを学ぶことで、問題を正しく読み解きそれぞれ1つ1つ整理して考える力である「読解能力」も身につけることができます。
これらがどのようにして育まれて、どんなことに活かされるのかを順を追って1つ1つ見ていきましょう。
問題を読み解く読解能力
プログラミングは、コンピュータに対し「どうして欲しいか?」というのを人間が正しく指示を与えてあげないといけません。プログラミングを作る前に、最初にどんな指示を出せば良いのか?というのを考えないといけないのです。
何か問題を与えられた時に、そこから文章を読み解き、「何を」「どうしたい(すればいい)のか」を正しく把握する力、つまり読解能力が必要不可欠なのです。
これは、算数の文章問題や国語の長文問題などと同じですね。
プログラミングの場合は、コンピュータに指示を出す(プログラムする)ために、「何を」「どうするか」を明確に把握する必要があり、何度も繰り返し学習することで、自然とこの読解力は鍛えられていきます。
順序立てて考える論理力
プログラミングでコンピュータに指示を出すときは、1つ1つ順序立てて指示を出さないといけません。
大人であれば、コンビニで牛乳を1つ買ってきて!と言えば、その通りにおつかいをすることができます。しかし、これが小さい子であれば、もっと詳しく説明をしてあげる必要があるかもしれません。
家を出て左に進んで、信号を渡った先にあるコンビニで、このパッケージの牛乳を1つ持って、レジでこのお金を払って、買ってきてね!といったように、手順を噛み砕いて説明してあげないといけないですよね。
実はコンピュータに指示を出す場合も、同じように全ての行程を噛み砕いて、1つ1つ順序立てて指示をしてあげなければいけません。
このように行程を順序立てて考える力こそが論理的思考なのです。
プログラミングをするということは、コンピュータに正しい順序で正しい指示をする必要があり、それを行う上で論理的思考が鍛えられるというわけです。
正しい答えを導く問題解決能力
コンピュータはプログラムの指示通りに動いてくれる反面、その指示が間違っていても間違ったまま動いてしまいます。人間であれば、多少指示があやふやでも自分で考えて行動することができますが、コンピュータはそうはいきません。
ですので、自分の思い通りの動作をさせるためには正しいプログラムを書かないといけません。
しかし、プロのプログラマーでも、1発で完璧なプログラムを書けるといったことはなく、実際にはちょっとしたスペルミスでのエラーや思い通りの動作にならなかったりするのは当たり前で、何度も試行錯誤をして完成させていきます。
このようにプログラムは何度も試して、問題点を見つけて修正しながら、試行錯誤して作っていきます。
何度でも試せるのはプログラミングの魅力でもありますね。
プログラムを修正する際に、「どこを」「どのように」修正すれば正しく動くようになるのか試行錯誤して解決していくという過程を繰り返し行うことで、問題解決能力が非常に鍛えられます。
特にプログラミングのように論理的思考に基づいた問題解決能力というのは、社会のありとあらゆる場面で活躍する能力であり、ぜひとも小さい頃から身につけておくべき力です。
どうすればこれらの能力が身につくの??
では、どうすればこれらの能力は身につくのでしょうか?
答えは簡単です!
プログラミングを楽しんで、何度も失敗して試行錯誤することです。
私の知っている数多くのプログラマーの方達にどうしたらプログラムは学べるか聞いたときも、楽しんで失敗を繰り返す!という答えが非常に多かったです。
試行錯誤して問題を解決しようとすることで、問題の読み解く力や論理的思考も同時に鍛えられ、どんどん頭の回転も早くなっていきます。
プログラム的思考を育てるうえで大事なのは、1回で正しい答えを見つけることではなく、何度も失敗して試行錯誤を繰り返すことで、「読解力」「論理的思考」「問題解決能力」を鍛えていくこと[/mo]だと考えます。
子供の可能性や能力を引き伸ばすために、保護者の方もぜひお子さんと一緒に取り組んで、[my]失敗と試行錯誤を楽しんで頂けたらと思います。
まとめ
プログラミング教育では以下の3つの能力が身につきます。
これらを鍛える上で重要なのが、
失敗をしかるのではなく、改善して成功できたことを褒めてあげましょう!