プログラミング的思考「順序(じゅんじょ)」とは?
「プログラミングする」ということは、コンピューターに向かって、何を、どの順番でやるのか、一つずつ命令する、ということです。
もし命令が一つでも欠けていたら、コンピューターは何をするか分からなくて処理を中断するでしょう。 もし命令の順番が違っていたら、思ったように動かないでしょう。忠実に命令通りに実行するのがプログラムですから。
最初から順番に一つずつ命令通りに実行していくこと、これがプログラミングの基本的な考え方のひとつ「順序(じゅんじょ)」のことです。 「順次実行(じゅんじじっこう)」「順次処理(じゅんじしょり)」ともいいます。
日常にあふれているプログラミング的思考「順序」
順序① 頭の中で手順を組み立てる
プログラマーはプログラミングをするとき、処理の順番を頭の中で組み立ててからプログラムを書き始めます。
でもこれってプログラミングするときにかぎった話ではないですよね。 日常でも料理をする前に、料理の手順を頭の中で組み立てます。
目の前に採れたての大きなカボチャがあるとします。 カボチャを見つけたあなたは嬉しくなって「カボチャがあるぞ!カボチャ煮を作ろう!」と思います。 そしたら、カボチャ煮を作る手順を頭の中に思い描きます。
まずは洗って、
まな板と包丁をとって、
食べやすい大きさに切って、
鍋に水を入れて、
火をつけて、
お湯を沸かして、
カボチャを入れて、
・・・・あ、お湯を沸かしている間にカボチャを切ろう
・・・次に砂糖や醤油を入れよう、
湯で時間は5分かな・・・
そしてあなたはカボチャを手に取り、頭の中の手順通りにカボチャ煮を作りはじめます。
プログラミング的思考「じゅんじょ」は、料理と同じように、頭の中で手順を組み立て、最初から一つずつ順番に実行していくことをさします。
順序② 順をおってひとつずつ確かめる
プログラマーはプログラムの命令が書かれていたら、そのプログラムは期待通りに動くか、順をおってひとつづつ確かめます。
料理のレシピがあったら、作りたいものを本当に作る手順のものか、レシピの内容を確認しますよね。 これも日常の中にある「じゅんじょ」の考え方と同じです。
あなたはカボチャを使った料理のレシピを見つけました。
このレシピの手順通りに作れば本当にカボチャ煮は作れるのだろうか・・・
あれ、このレシピは水ではなくて牛乳を使っている・・・
ということはカボチャスープの作り方かな・・・
プログラミング的思考「じゅんじょ」はレシピと同じように、命令に従って実行していけば期待通りのものが完成するのか、順を追って確認します。
これもそれも「順序」
料理のみならず、他にも日常に「じゅんじょ」はあふれています。
手洗いするときも(石鹸つけたら水でながしますよね。石鹸つけて終わりだと、手がベタベタのまま!)
楽譜を読んで演奏するときも(楽譜の音符どおりにひかなかったら、ベートーベンも悲壮!)
電車やバスが飛んでいるのも(電車が順番通りに駅にとまってくれなかったら待ち合わせに遅れちゃう!)
コンピューターが「じゅんじょ」通りに実行するように、日常のいろいろなことが「じゅんじょ」の中でひとつひとつ実行されていっているのです。
生きてくるプログラミング的思考力「順序」
プログラミング的思考「順序」は実はあなたが当たり前のように日常でやっていること。身の回りにプログラミング的思考は溢れていたんですね。
プログラミング的思考「順序」とは
- 全体の処理を把握する
- 頭の中でシミュレーションして手順を組み立てる
- 順を追ってひとつずつの処理を確認する
この思考力を日常生活や学校の宿題や勉強などでちょっと意識してみてください。頭の中が整理できて見通しがたちやすくなると思います。
そして、手順を確認することで、足りなかった処理や過分な処理に気づくことができます。
もっとここをこうした方が効率的だ、とか手順を逆にしてみよう、と改善点も見つかります。
プログラミング的思考「順序」でかなうこと
- 頭の中が整理できる
- 先の手順を見通せる
- 手順が網羅できる
- 効率の良い手順を選択できる
当たり前のようにやっている「順序」ですが、プログラミング的思考「順序」を意識してみると物事がよりスムーズに進むかもしれませんね。
実際にプログラミングやプログラミング学習をやってみると、これらの「順序」の思考力が深く理解できて、日常にもっと生かすことができるようになるかもしれません。「順序」を学べるプログラミング教材はこちらから。