「プログラミングとは何か」を子供にもわかりやすく説明します
プログラミングを子供に説明しようとすると困ってしまうことがありませんか?プログラミングとは何かという問題を大人にも子供にもわかりやすいようにご説明します。
小学校での必修化もはじまり、全国の子供たちが学んでいる「プログラミング」ですが、子供に「プログラミングって何?」と聞かれて答えに詰まってしまうことも多いのではないでしょうか?
「プログラミングを子供に説明して」と言われると、プログラミング経験のない人が多い大人世代にはすこし難しい質問だと思います。
そこで、「プログラミング」を子供にもわかるように説明するための、プログラミングでやっていることをご紹介します。
目次
「プログラム」と「プログラミング」の違いとは
「プログラム」という言葉を聞いたことがあると思います。
たとえば「運動会のプログラム」といえば、午前中は子供たちが玉入れをしてその次に綱引き。 お昼ごはんを食べたらダンスをしてリレーをする。
…というように「やること」と「順番」を決めたモノのことです。
同じように「プログラム」とは、「やることとその手順」のことです。
「プログラミング」というのは、プログラムをコンピューターにさせることです。
つまり「コンピューターを使って、思い通りの動きをするように指示を出すこと」ことをプログラミングと呼びます。
プログラミングは計画を立てること
「作りたいもの」や「やらないといけないこと」という目的を達成するために、「達成までの計画を立てること」がプログラミングのはじめの一歩です。
子供が「マリオみたいなゲームを作りたい」と考えてみても「キャラクターを動かす」「ゲームオーバーとクリアを用意する」などたくさん考えないといけないことがあります。
まずは、これらの「機能」と、その「手順」を考えることを子供たちに教えてあげましょう。
プログラミングは正しく指示を出すこと
コンピューターは、子供の言うことも大人の言うことも同じように聞いてくれます。 ただし、正確に指示を出さないと思ったとおりには動きません。
たとえば、部屋を片付けない子供に「おもちゃを片付けなさい!」と言ったとします。
その後、部屋のようすを見に行くと、まだ本やお菓子が散らかっていました。怒ったお母さんに子供は言いました「おもちゃは片付けたけど、本やお菓子は『おもちゃ』じゃないよ」。
屁理屈のように聞こえますが、これがコンピューターの中で起きるのがプログラミングです。
マリオの敵を考えてみても「敵に当たるとゲームオーバー」ですが、「頭に当たる(踏む)と敵にダメージを与える」ことができます。
この「敵に当たる」が何を指しているのか考えることが「論理的思考」「プログラミング的思考」と呼ばれるものです。
繰り返すこと
コンピューターは人間よりも仕事が早くて正確です。
なぜなら、コンピューターは同じことを何回も繰り返すことが得意だからです。
プログラミングの世界では「反復処理」や「ループ」と呼ばれ、たとえば「1時間に1回音を鳴らす」というプログラムを実行すれば、朝も夜も寝ずに正確に仕事をしてくれます。
「ずっと繰り返す」や「5回繰り返す」などやってほしい内容によって回数を決めることで、より便利に使うこともできます。
もし〇〇なら△△する
「車でこの道をまっすぐ進む」というプログラミングをしたとします。
これだけでは、どんな時も止まらず動き続けてしまって危険なので「もし信号が赤なら止まる、青なら進む」というプログラムも必要になります。
このような「もし〇〇なら△△する、そうでなければ□□する」というのをプログラミングの言葉で「条件分岐」と呼びます。
条件分岐をつかうことで、いろんな状況に対応できるプログラムを作ることができるようになります。
プログラマーになるために必要な心構え
失敗を恐れない
プログラミングの良いところは「失敗してもすぐに何回でも別の方法を試せる」ところ。
別のブロックを置いてみたり、数字を変えてみたり…試行錯誤することでうまくいく方法を見つけたり、予期せぬ面白いプログラムが作れたりします。
プロのプログラマーも作ったプログラムが思い通りに動かないことばかりです。
子供たちの失敗を責めるのではなく「失敗の数 = チャレンジの数」と考えて、あきらめずにチャレンジし続けられる力を養うことができます。
共有する
「作ったプログラムは共有しよう」という考えがプログラマーのあいだの共通認識です。
いま見ているこのサイトも、すべて私一人で作ったわけではありません。これまでに多くのプログラマーが共有してきた便利なプログラムをたくさん利用して作られています。
子供たちに人気のプログラミング言語のScratchでも「リミックス」という機能を使うと、他の人のプログラムを自分のプロジェクトにコピーすることができます。
他の子供たちが作った作品が、どんなプログラムで作られているかを参考にしたり、アイディアを活かして自分なりの別の作品を作ることで「自分ひとりではできなかった作品」をプログラミングすることができるようになります。
最後に
いかがでしたでしょうか。
プログラミングは他の子供の習い事ではなかなか味わえない「自分のアイディアをカタチにする」「失敗してもすぐに何度でも試せる」など、成長につながるポイントがたくさんあります。
そして「正しく動かすためにどうすればいいか」を論理的に考えるチカラも養うことができます。
子供たちにとってのプログラミングは、好奇心を刺激し、自分で考えた目標に向かってワクワクしながら取り組めるものです。
ぜひ家庭でも子供たちと一緒に楽しいプログラミング学習を取り入れてみてください。
アンズテックでプログラミングを始めませんか?
アンズテックでは、オンラインで小学生中学生の子どもたちへプログラミングレッスンを提供しています。
講師は全員プログラマーですので、初めてのお子様から本格的なプログラミングまで幅広く対応できます。
自宅から楽しくプログラミングを学びながら、将来に役立つスキルを身につけませんか?
まずは90分間の無料体験レッスンでゲームプログラミングの基本を学びましょう!