インタビューでペアプログラミングを行っているときにこのプログラミング手法に出会い、Googleでその名前を見つけることができませんでした。
考え方は、最初に変数を使用する式を記述し、その後変数を計算するコードを記述することです。
private bool ValidPolicyNumber(string policyNumber)
{
var hasExpectedPrefix = policyNumber.Substring(0,5) == "POLIC";
var followedBy7Digits = Regex.IsMatch(policyNumber.Substring(6,7), "^[0-9]{7}$");
var hasLengthOf12 = policyNumber.Length == 12;
return hasExpectedPrefix && followedBy7Digits && hasLengthOf12;
}
前述の手法を使用してこの関数を記述する場合、最初に最後の行return hasExpectedPrefix && followedBy7Digits && hasLengthOf12;
を記述し、次にその前の3行を記述します。
私が見つけた最も近い技術は「希望的観測」であり、それはSICPからのものですが、後で初期化する変数を使用するのではなく、後で実装する関数の呼び出しに関連しています。