斜めダンディズム

日常に補助線を。

#21 構造の捉え方

プログラム開発においてソースコードを解析するのは大変だ。ソースコード解析にもコツがあり、まつもとゆきひろは「ソースファイル名」を重視している。

ソースコードを読み解くときは、まずプログラム全体の枠組みを理解することが有効でしょう。プログラム全体を読む必要はないのですが、自分の欲しい情報がどこにあるのかを見つけ出すには、プログラム全体の構造のイメージをつかんでおくと便利なのです。ここで最も役に立つのはソースファイル名です。 引用:第10回 ソースを読もう:まつもとゆきひろのハッカーズライフ(1/2 ページ) - ITmedia エンタープライズ

確かにソースファイル名を見るとそのシステムが何をしようとしているのかがおぼろげながら立ち上がってくる。「動詞+目的語」でファイル名が決められることが多いので動詞と目的語を集めていけばシステムを脳内で再構成できそうだ。ここで興味深かったのは、ファイル名から構造を掴んでシステムを把握する方法に松岡正剛の「目次読書法」との相関が感じられたことだ。

「目次読書法」というだけに、鍵は「目次」にある。目次を集中して読みこみ、本の構造をとらえる。得られた情報を活かして、さらに深く本の内容を推測していく。加えて、本をスキャンするかのようにズワーっと全体に目を通していく。 引用:たった1時間で新書1冊が読める!目次読書ワークショップが始動。初回、大盛況。

ここで言われている「目次」に当たるのが先ほどの「ソースファイル名」に該当する。システムを相手にするか本を相手にするかで対象は異なるが、両者とも構造の捉え方が似ているところが面白い。目次やソースファイル名には情報が凝縮されている。

  • 情報密度の高いものを咀嚼し脳内で解凍する過程を大事にする点
  • 高圧縮の情報から圧縮率の低い情報へとインプット対象をずらす点

この辺りが構造理解のヒントになる。「理解するとは何か」「分かるとは何か」「学ぶとは何か」といった問いにも構造理解の知見は応用できる。これほど応用範囲が広いテーマはない。