ソースコードをひらメソッドで「通し読み」(2)

先日の続き。

というわけで実際にやってみました。

  • リーディング対象:hiki
  • 言語:Ruby

ちなみに私の Ruby 言語歴は約2週間です。


結論から言うと、失敗でした。

ほんのわずかに読む速度が上がっただけでした。

理由は、以下の2点です。

  1. まず文法をきちんと把握してないからリファレンスなしで読むことがそもそも不可能
  2. ソースコードと通し読みの相性の悪さ


まず1点目ですが、これは当たり前の話で、リーディングに必須な知識が欠けているから読めるはずがない。自然言語のように素読するわけにもいかないので、結局リファレンスをひかざるを得ない、というわけです。
次に2点目の話です。
上から下に一直線に読める自然言語の文章と違い、プログラミングに使う言語で作られたソースコードは関数やメソッドが複雑にリンクし合う階層構造で成り立っています。
そして普通の人間はリーディングをシーケンシャルに行います。上から下に読むのです。
「全体を通してさっと読む」という作業はまさしくシーケンシャルアクセスなので、ソースコードで同じことを行えば同じ関数を何度も参照することとなり、結果としてあまりにも膨大すぎる分量のコードを読むことになるでしょう。人間には不可能です。


さて、どうしたものか。