よりRubyに似たスタイルでRubyのコードを記述したいのですが、引数の受け渡しを操作するときに問題が発生しました。
ABCゼロかどうかを確認する必要があります。ABCがnilの場合は、別のシンボルをdosomethingに渡します。そうでない場合は、別のタイプのハッシュ値を渡して計算します。
RubyはJavaとは異なり、異なるタイプの引数(異なるキー)を渡すことができます。
次のコードをより美しくするにはどうすればよいですか?
コード内の多くの場所で呼び出すためdo_manything、、、を1つの関数do_otherthingsにマージdo_manythings_againすることは答えではありません。dosomething
if ABC.nil?
Apple.dosomething (:foo => DEF) { |a|
a.do_manything
a.do_otherthings
a.do_manythings_again
}
else
Apple.dosomething (:bar => ABC) { |a|
a.do_manything
a.do_otherthings
a.do_manythings_again
}
end