勉強して新しい技術を学んで、それからアプリを開発するってのが普通の考え方だけど、最近自分はそれが間違っていることに気づいた。
本を読んで、基本関数あたりを全部記憶できるような凄い人であれば別だけど、自分みたいな一般ピープルは技術書読んだところで理解できない。
それに基づいた自分のプログラミング学習法。
- とりあえず入門書を買ってくる。この時のポイントはサンプルがついているやつ。
- 目次だけはちゃんと読む。その後のページは読む必要なし。(速読を身につけている人なら全ページをぱぱっと読む感じでOK)
- サンプルの中でも一番難しそうなヤツをソースを読む。
- その際、入門書にコマンドリファレンスぐらいはついているだろうから、分からないところがあればそこを参照。大概の言語ならWEB上にリファレンスはあるから検索かけまくる。
- サンプルのソースを8割方理解できたなと思ったら、初めて入門書を読み返す。
- 演算子とか変数とか、大体読まなくても理解できてるよなってところは章ごと飛ばす。Cでいえは構造体とかポインターとか、構文自体で難しそうなところを熟読。
- それがすんだら、改めてサンプルのソースを弄り倒す。(細かい機能をつけたりとか、メッセージを表示させたりとか)
- サンプルのソースを弄るのに飽きたところで、独自のアプリを小さいのから作る。(いきなりRPGを作ろうとかそんなことは考えないように、絶対挫折する)計算機とかメモ帳とか。テトリスあたりもゲームプログラミングではいちばん簡単。
自分は大体の言語はこんな感じで勉強してきた。たぶんこれが一番早いプログラミング習得法だと思うけどどうだろう??
すくなくともソース弄って、動かしている間は満足感があるので、入門書読んで飽きて挫折。っていうのは防げると思う。
途中、「わけわかんね」の状態になったら、とりあえず覚えているだけの分で何かアプリを作ってみるのもあり。
あと、いろいろやってて面白くなくなってきたら、新しい技術書に変えるのもモチベーションがあがる。