break и return в рубинах, как вы их используете?

Мне самое большое ограничение к этому сотни или тысячи процедуры хранилища является пригодностью для обслуживания. Даже при том, что это не прямой хит производительности, это должно быть соображение. Это - архитектурная точка зрения, необходимо запланировать не только начальное развитие приложения, но и будущие изменения и обслуживание.

, Что, будучи сказанным необходимо разработать/создать столько, сколько приложение требует. Хотя с В спящем режиме, NHibernate.NET LINQ, который я попытался бы сохранить таким же количеством логики процедур хранилища в коде, и только поместить его в базу данных, когда скорость является фактором.

25
задан Community 23 May 2017 в 11:54
поделиться

1 ответ

Я хотел отредактировать утвержденный ответ, чтобы упростить пример, но мое редактирование было отклонено с предложением сделать новый ответ. Итак, это моя упрощенная версия:

def testing(target, method)
  (1..3).each do |x|
    (1..3).each do |y|
     print x*y
     if x*y == target
       break if method == "break"
       return if method == "return"
     end
    end 
  end
end

мы можем увидеть разницу, пытаясь:

testing(3, "break")
testing(3, "return")

Результаты первого (оператор break выходит из внутреннего цикла только при достижении 3) :

1232463

Результаты последнего (оператор return, выходящий из целой функции):

123
1
ответ дан 28 November 2019 в 17:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: