巨大関数を理解するには

 とりあえず、延々と長い関数は、内部の処理を大づかみに分割することが必要だろう。

 「Code Reading: The Open Source Perspective (Effective Software Development)*1」で紹介されていた、Microsoft Wordで読み込んで、印刷イメージの縮小表示で全体の概観を眺める、という方法はやってみた。なんとなくこのあたりは雰囲気が違うなというのは見て取れる。

 NSチャートを自動的に生成してくれるツールも有効かもしれない。たしかどこかでダウンロードできたはず。

 プログラムスライスを生成してくれるツールも助けになるかも。対象とする関数は、引数なし。内部の処理では関数外の変数をいくつも使っている。どんな変数をいくつ、どのように使っているのかがはっきりすれば、関数の処理内容の理解につながるだろう。

*1:

Code Reading: The Open Source Perspective (Effective Software Development)

Code Reading: The Open Source Perspective (Effective Software Development)