У меня есть два примера, дающих один и тот же результат.
С блоком:
def self.do_something(object_id)
self.with_params(object_id) do |params|
some_stuff(params)
end
end
def self.with_params(object_id, &block)
find_object_by_id
calculate_params_hash
block.call(params_hash)
end
и с методом:
def self.do_something(object_id)
some_stuff(self.get_params(object_id))
end
def self.get_params(object_id)
find_object_by_id
calculate_params_hash
params_hash
end
Второе решение кажется более простым, но я нашел некоторые варианты использования первого в коде нашего приложения. Мой вопрос: в какой ситуации рекомендуется первый? Каковы плюсы и минусы каждого из них?