メソッドを呼び出すとします。そのメソッドからの戻り値が必要です。ただし、このメソッドはタスクを他のメソッドに委譲し、そのメソッドはさらにタスクを他のメソッドに委譲する可能性があります。最上位のメソッドによって最終的に返される値は、サブメソッドとサブメソッドのサブメソッドによって最終的に決定されます。
次のシナリオを想像してください。
public String method1(Object o){
if(x)
return subMethod1(o);
if(y)
return subMethod2(o);
if(z)
return subMethod3(o);
else
return "";
}
// サブメソッドの例
public String subMethod1(Object o){
if(a)
return subSubMethod1(o);
if(b)
return subSubMethod2(o);
if(c)
return subSubMethod3(o);
else
return "";
}
//サブサブメソッドの例
public String subSubMethod1(Object o){
//etc etc
return "";
}
これは私にとって繰り返し発生する問題であり、この種の問題を解決するための設計パターンがあることを願っています。
そのようなデザインパターンはありますか?