ゲームプログラマーの悟です。
この記事では
- 何が分からないのかが分からない…
- いざ、一からプログラムを組もうとすると何も思い浮かばない
- 検索力って聞くけど、なんて検索すればいいのか分からない~~!!
という人のために、プログラマーとして実際に現場で仕事して教育担当もしていた悟が
- プログラムに必要な問題解決能力を鍛えよう!
- 具体的な問題に対する考え方
を紹介します
私が普段大切にしているものの考え方です!
少しの意識の違いで変わってきますよ!
「検索能力」は初心者の解決策になるのか?
プログラムができる方々にプログラムの上達方法を聞くと出てくるのが
「検索能力が一番大事」ということです
ですが、初心者からしてみれば
- 「そもそも何が分からないのか分からない」
- 「なんて検索すればいいのか分からない」
だと思います
「if文の中に入ってくる”<“や”>”がそもそも何と言うのか分からない」
言葉として”小なり”と”大なり”という言葉があり、比較演算子という言葉もありますが、そもそもその言葉を知らない
結果として検索するためにキーボードを見て”くの字”と”逆くの字”がどこにあるのかのにらめっこが始まります
このような状態では検索能力が解決策にはなりえません
それを解決する能力のことを私は問題解決能力と呼んでいます
それでは、詳しく説明していきます
問題解決能力とは?
問題解決能力とは、未知の事柄に対してのアプローチ方法を増やすことです
このアプローチ方法の量が多いほど、物事の理解が早まります
優れたプログラマーとは問題解決能力にたけている人のことだと思います
優れたプログラマーは、答えにたどり着くスピードがべらぼうに早いです
ですが、問題解決能力の意味を理解したとて
いざ自分がやるとなると、結局なにが分からないのか分からないとなってしまいます
次は、すぐに出来る問題解決能力を高めるワークを説明していきます
プログラムに関しての知識はいらないので、安心して挑戦してみましょう!
ワーク:日常のプログラムを探そう!
ワーク
私たちの日常にはプログラムを考える上で参考に出来るものが多くあります
・動きが想像できるものを1つ選んでみる。
・選んだものがどのような順序で動いているかを想像してみる。
この順番でやってみましょう!
【例1】
選んだもの | 自動販売機 |
どう動いているか? | 1.お金をいれる 2.購入できる金額までお金が入れられたらボタンが光る 3.購入可能なボタンを押すとその商品が落ちてくる 4.余った金額があった場合、お釣りが出てくる |
【例2】
選んだもの | ドアを開けるとき |
どう動いているか? | 1.目でドアを探す 2.ドアに向かって歩く 3.ドアノブを探す 4.ドアを開ける 5.通り抜ける |
【例2】のように自分では日頃意識しないような、”ドアを開ける動作”もプログラム的に考えることができます。
ゲームとかの村人などの動きは普段の我々の行動をプログラムに落とし込んでいるよ!
ワークをやるときにどのように意識したほうが良いこともあります!
以下の記事も参考にしてみて下さい↓
まとめ
日頃から自分の見ているものがどのように動いているのかを気にしてみる、
それだけで問題解決能力は上がっていくと思います
問題解決能力を上げていくと、
「あの時の考えたものがこの問題にも当てはまりそう!」
と感じるときがやってくると思います。
そうなると、強いです。
ぜひ、問題解決能力を鍛えてみてください!
コメント