コード解析

今週はV8のコードをひたすら読んでました。コード解析力がないので、辛いですなぁ。
そもそもこれだけ技術が進んでもコードを解析することに関しての指南本が少ないっていうのは、やはりみんな苦労しているのだろうか。数千ステップ程度であれば、main関数から読めば、1日もあれば、とりあえず、一通り目も通せるし、構造もだいたい把握できるのだろうけど、万のオーダー、そして、10万ステップ程度になってくると、上から読むにも、ちんぷんかんぷん。メモリ構造つかむのも大変。
ツールでコールツリーを出したり、クラス関係をだしたりすることは、いろんなツールでできるようになってきた。フリーのツールだと、eptreeとかを愛用しているし、秀丸などのタグジャンプも便利だ。しかし、頭のよい人たちの書いたソースだったり、大規模なソースだと、うまく解析できないことも多々あり泣かされる。
あと、多くのツールにありがちなのが、呼び出し関係はわかるのだが、そこにあるメタファーな情報、エッセンス的なものまで解析してくれるツールはない。(まぁ、作るのも難しいと思うけど。)
・・・結局は自分の解析力をあげて、読むスピードをあげていくしかないのだろうか。

ちなみに、以下の書では、コードは文芸作品と最初に説明している。少なくとも、私が仕事で関わらなければならないコードは優しい文学作品であってほしい。

Code Reading―オープンソースから学ぶソフトウェア開発技法

Code Reading―オープンソースから学ぶソフトウェア開発技法