プログラミング勉強のコツを調べてみた

公開日: 更新日:

はじめに

私はエンジニアとして働いています。仕事柄、毎日新しいことを勉強しながら過ごしています。

私はプログラミングを一生続けていきたいと思っています。なのでもっと自分の技術力を上げていきたいです。

一度、プログラミングの勉強の仕方自体を調べてみることにしました。

プログラミング上級者ってどんな人?

まず、技術力のある人(上級者)はどんな人なのか調べることで、そこに近づく足がかりになりそうです。

プログラミングの上級者の特徴を調べた研究では「自分の中に応用の効く知識を沢山持っている」という結果になったそうです。

なんとも当たり前の結果ですね。ですが逆に考えると、自分の中に使える知識を効率的に蓄えることができれば、ちゃんとプログラミング上級者になることができるということになります。

次からは効率的に使える知識を蓄える方法を考えてみます。

マシンイメージ

ある別の研究では、上達の速い「筋のいい初心者」ほど頭の中に正確なコンピューターのイメージがあったそうです。

エラーを解決するためにそのコンピューターイメージを使って、どうすれば解決できるか脳内シュミレーションすることができるということだと思います。

エラーに対する態度

エラーに対する態度によっても上達速度が違ってきます。

エラーに対する態度は3パターンあります。

  1. うまくいかないことに怒り出す人
  2. 闇雲にコードを変えてうまくいくか試す人
  3. なぜエラーが出てるか考えて試していく人

上達が早いのはもちろん3番目のパターンです。言われてみれば当たり前な話ですが、エラーに直面している時にこんなことまでなかなか考えないと思います。

事前に知っておくことで、エラーに直面した時に少し落ち着いて対処できそうです。

脳内メモリ

プログラミングは認知しなければいけない情報量が多いのでワーキングメモリ(作業記憶)が重要です。コンピュータのメモリと一緒です。ワーキングメモリが広いと一度にたくさんの概念を保持しておけるので、複雑な理論などを理解しやすいというわけです。

ワーキングメモリが広いことも重要なのですが、上級者は情報をうまくグループ化できるのでワーキングメモリを節約できるそうです。ここでも知っている知識の量が関わってくるというわけです。

最後に

参考にした論文をまとめた本は6,000円近くする上に洋書だったのですが、参考になる内容が沢山ありました。

参考

Amazon.co.jp: The Cambridge Handbook of Computing Education Research (Cambridge Handbooks in Psychology) (English Edition) 電子書籍: Fincher, Sally A., Robins, Anthony V.: 洋書