by shigemk2

当面は技術的なことしか書かない

コードリーディングにおける静的解析と動的解析

動的解析

デバッガツールを使ってコンパイルしながらコードを読みとく。
実行を一時停止してその時点のコールスタック(関数の手続きの呼び出しチェインのこと)

関数Aが関数Bを呼び出し、関数Bが関数Cを呼び出したときに関数C内で実行を一時停止すると、
A B C の順序のチェインを得られる。このチェインをコールスタックと呼ぶ。

適切なブレークポイントはメモするとよいだろう。

静的解析

エディタを使ってコードを読みすすめていく。

でも一から何万行もあるコードを読みすすめるのは骨なので、まず

  1. メタ知識を勉強する(使われているフレームワークプログラミング言語のことなど)
  2. レイヤの境界を抑えながら読む
  3. 重要そうなコードを集中的に読む

などが大事だろう。