いくつかのコードをリファクタリングしていて、次のようなものを見つけました
編集:
設定は、データベースに保存されているハッシュです。データベースに格納された key-> value 構造を想像してみてください。アクセスできない場合は、例外が生成されます
def MyClass
def my_method(foo = Settings[:foobar]
foo
end
def your_method
my_method
end
終わり
Settings[:foobar] が存在するかどうかのチェックがないため、安全ではないと思います。私の質問は:
次のように書いた方が安全でしょうか?
def MyClass
def my_method(foo)
foo unless foo.nil?
end
def your_method
my_var = Settings[:foobar] rescue "default value"
my_method my_var
end
end
そうでない場合、他の良い代替手段はありますか?