Мне самое большое ограничение к этому сотни или тысячи процедуры хранилища является пригодностью для обслуживания. Даже при том, что это не прямой хит производительности, это должно быть соображение. Это - архитектурная точка зрения, необходимо запланировать не только начальное развитие приложения, но и будущие изменения и обслуживание.
, Что, будучи сказанным необходимо разработать/создать столько, сколько приложение требует. Хотя с В спящем режиме, NHibernate.NET LINQ, который я попытался бы сохранить таким же количеством логики процедур хранилища в коде, и только поместить его в базу данных, когда скорость является фактором.
Я хотел отредактировать утвержденный ответ, чтобы упростить пример, но мое редактирование было отклонено с предложением сделать новый ответ. Итак, это моя упрощенная версия:
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