我使用变量缓存来减少执行时间,如下所示:
def some_method
return @var if @var
[some other code that gets executed only once]
end
是否有return @var if @var
的简写?如果是单行方法,我使用:
@var ||= [some more code]
可以用多行方法做类似的事情吗?
我用这个:
@var ||= begin
# ...
end
在some_method
内部有必要这样做吗?
如果没有,我会考虑做
def some_method_wrapper
@var || some_method
end
这样可以保持some_method
的清洁