コードリーディングについて思うこと

prototype.jsをgihyo.jpの連載を参考に読んでいて感じてるのは
コードリーディングって教材として解説があるとぜんぜん効率が違うなぁということ。
(もちろんベストはコード書いた本人から解説を聞けることだろうけど)


大学の研究でNICドライバのコードを読んでるけど、一番時間かかるのが
今読んでいる部分が「何をするための処理」なのか、その部分のコードの目的、意図を理解すること。
それがわからないと、コードの内容を理解できない。
逆にわかると、一気にすらすら読める。


研究で読んでるNICドライバはコメントによる注釈が少めなので
「何をするための処理」なのかを理解するためにはソースコードを眺めないとわからない。
ドキュメントも、英語、日本語ともにほぼない。


一方prototype.jsではコードを解説してくれてるサイトがわりと多いので
処理ごとにそこが「何をするための処理」なのかをソースコードを読まなくても解説を読めば理解できる
つまり、読む部分が行っている処理の目的、意図がわかったあとでソースコードを読むことができる。
これは、手探りで読むのに比べてはるかに楽だ。
コードの解説を書いてくれてる先人達に感謝感謝。


ということで僕も、手探りの状態でコードリーディングしなきゃいけない状況になったときは
後の人たちのためにドキュメントを残していこうと思う。