【发布时间】:2017-09-22 00:39:08
【问题描述】:
这里有两种处理异常的方法
第一
def prep_food
get_veggies()
get_fruits()
rescue Exception => e
# => do some logging
# => raise if necessary
end
def get_veggies()
# gets veggies
end
def get_fruits()
# gets fruits
end
第二
def prep_food
get_veggies()
get_fruits()
end
def get_veggies()
# gets veggies
rescue Exception => e
# => do some logging
# => raise if necessary
end
def get_fruits()
# gets fruits
rescue Exception => e
# => do some logging
# => raise if necessary
end
第一种方法在顶层处理异常,而第二种方法在深层处理。 两者有什么区别,程序员什么时候应该在它们之间进行选择?
【问题讨论】:
标签: ruby exception refactoring dry