2012-11-06
レガシーコード改善ガイド6章を読む
p.57
C++ では Java のようなリフレクションがないので CppUnit を書くのは難しかったらしい。
リフレクションとは、
「派生クラスのメソッドに対する参照をもって、実行時にメソッドを検索することが可能。」
p.67
スプラウとメソッドとスプラウトクラス
単一のメソッドあるいはクラスだけを新規メソッド/クラスとして抽出して、
まずはそこだけテストを書くという方法。
新芽が出るイメージ。
p.76
ラップメソッドトラップクラス
本のメソッドと同じ名前のメソッドを新たに作り、古いコードに移譲する。
(古いコードの名前を変更して、新しいラッパをその古い名前にし、その中に処理を追加する。)