効果的な学習法
プログラミング言語には、習得に必要な技能がいくつかあります。中でも、意味を理解する、機能を覚える、利用するといった技能はとても重要です。重要ではあるのですが、残念なことにその学習法は確立されておらず、明確なガイドラインもありません。
そこで、ここでは脳科学や認知心理学で有効とされる学習法を紹介していきたいと思います。個人単位でプログラミング言語の習得を保証するようなものではありませんが、個人の経験談よりはずっと効果が期待できる手法だと思います。この中で自分に合ったものがあれば積極的に試してみてください。
全体像を掴む
一度記憶した情報や、関連した情報は、全く新しい情報よりも簡単に記憶することができます。本講座も、まずは軽く一読し、実習パートを試してみて、わからないところは再読するといった読み方が良いと思います。また、全ページを軽く読んで、そこから各節毎に再度学習していくのも良さそうです。
睡眠を利用する
新しいことを学んだ後、睡眠を挟んでテストすると結果が向上するという研究結果が報告されています。また、学習前に睡眠を取ると、新しい情報を処理する能力が向上されて学習効果があるそうです。睡眠を学習に活かすとしたら、例えば就寝前に数ページ読み、睡眠後に復習を兼ねて実習パートを行うなどが良いかもしれません。ぜひ、自分の生活リズムに合った学習法を検討してください。
学習を習慣づける
脳は睡眠中に記憶した情報を整理整頓します。スポーツに顕著ですが、前日にできなかったことが次の日に急にできることがあります。これはレミニセンス(追憶)現象と呼ばれ、睡眠中の情報整理が一役買っています。この現象を利用しない手はありませんね。具体的には、1回にまとめて何時間も学習するより、毎日少しでもよいので学習を行って、睡眠の力を頻繁に利用するのが効果的です。
長いスパンで考える
学習の初期段階では効果が現れにくく、学習が進むに連れ累積効果が現れてきます。最初に読んで理解できなかったり、読み終わった後も効果があまりでていなかったとして、それで諦めないでください。プログラミング言語に必要な時間を考えると、本講座をすべて読んだとしても、それは初期段階の範囲内です。必ず学習効果が現れてきますので、努力を続けるようにしてください。
マインドセット
プログラミング言語の習得には学習法だけではなく、考え方やマインドセットといった心構えも重要です。まず一番大事なのは、習得できると信じることです。
まずはこう考えてみてください。プログラミング言語には数多くの優れた言語があり、その中で人気を得るには習得のしやすさがとても重要です。言語を設計できるような賢い人が、習得しやすいように作ってくれています。プログラミング言語の基本的な構造は中学英語よりもずっと簡単に習得が可能です。覚えられるかどうかではなく、いつまでに覚えるかという考えで取り組んでいきましょう。
そしてもし難しくて理解できないといった壁に行き当たった場合、そのような時は悩まずに飛ばしてしまいましょう。復習を繰り返せば自然に理解が深まっていくので、最初は先に進むことを優先すると良いと思います。
暗記しない
プログラミング言語には今まで出会ってこなかったような概念や専門用語が数多くあります。その中でも、本講座で紹介するif文やfor文といった制御構文、メソッドといったものは暗記する必要はありません。本やサイトを参考にして書くことができればそれで十分です。プロのプログラマでも言語のすべてを記憶しているのは非常に稀な存在で、普通は必要な際にサイトや本をさっと調べています。暗記する時間があれば、先に進んでしまいましょう。その代り、専門用語はきちんと理解し、記憶することが大事です。専門用語がわからないと何が書かれているのか正確に理解することができません。本講座では適時専門用語の解説も掲載しているので、一読をオススメします。
エビングハウスの忘却曲線
最後に、暗記や記憶に役立つ研究を紹介したいと思います。ヘルマン・エビングハウスという心理学者が記憶の忘却速度と再学習の研究を行い、忘却曲線と呼ばれる研究結果を発表しました。研究方法は次のようなものです。
- 「jic」や「tef」などの無意味な音節を暗記
- 時間を空けて記憶をテストし、忘れていた音節を再度暗記
- すべての音節を記憶するのに必要とした時間を記録
意外なことに、音節を忘れる速度については暗記が得意かどうかに関係なく個人差がほとんどなかったそうです。
そして、エビングハウスは忘れた音節を再度記憶する時間を計測し、節約率を割り出しました。節約率とは、忘れたものを再度覚え直すのに必要な時間をどれだけ節約できたかの値です。
このグラフが忘却曲線と呼ばれるものです。グラフの縦軸が節約率、横軸が経過時間を表しています。節約率は最初の1日で急激に下がり、その後緩やかに下り続けます。このグラフからは、時間を空けないで復習したほうが楽に記憶できるということが読み取れます。この研究結果がそのままプログラミングの学習に当てはまるわけではありませんが、記憶を定着させるには復習を繰り返す必要があり、復習には効率が良いタイミングがあることは確かなようです。音節の暗記の場合は1ヶ月で節約率がゼロになるので、復習は早めに行うようにしましょう。
効率的な学習に関連する4つのポイント
- 記憶の忘却は必ず発生する。
- 復習には効率的なタイミングがある。
- 復習を重ねるごとに忘れにくくなり、暗記も楽になる。
- タイミングよく復習すると学習効率が上がる。