Это хороший стиль, чтобы явно вернуться в Ruby?

В мире .NET, хотя у него все еще есть чувство SQL-esque, LINQ-to-SQL позволит вам иметь хорошее сочетание обработки данных и SQL-данных в памяти. Это также упрощает много низкоуровневых данных, которые никто не хочет делать.

Если вы хотите увидеть тип базы данных совершенно другого мышления, взгляните на CouchDB

g0]. «Лучше», очевидно, является относительным требованием, и этот вид базы данных несовместимости «Лучше», но только в определенных сценариях.

146
задан Sasha Chedygov 15 May 2015 в 19:30
поделиться

4 ответа

Нет. Хороший стиль Ruby обычно использует явный возврат только для раннего возврата . Ruby - большой поклонник минимализма кода / неявной магии.

При этом, если явный возврат сделает вещи более ясными или более удобными для чтения, это не повредит ничему.

66
ответ дан 23 November 2019 в 22:23
поделиться

Я лично использую ключевое слово return , чтобы различать то, что я называю функциональными методами , то есть методами, которые выполняются в первую очередь для их возвращаемого значения, и процедурные методы , которые выполняются в первую очередь из-за своих побочных эффектов. Итак, методы, в которых важно возвращаемое значение, получают дополнительное ключевое слово return , чтобы привлечь внимание к возвращаемому значению.

Я использую такое же различие, когда вызываю методы: функциональные методы круглые скобки, процедурные методы - нет.

И, наконец, что не менее важно, я также использую это различие с блоками: функциональные блоки получают фигурные скобки, процедурные блоки (т.е. блоки, которые что-то «делают») получают делают ] / end .

Однако я стараюсь не относиться к этому религиозно: с блоками, фигурными скобками и do / end имеют разный приоритет, и вместо того, чтобы добавлять явные скобки для устранения неоднозначности выражения, я просто переключаюсь на другой стиль. То же самое касается вызова метода: если добавление скобок вокруг списка параметров делает код более читабельным, я делаю это, даже если рассматриваемый метод носит процедурный характер.

31
ответ дан 23 November 2019 в 22:23
поделиться

Как сказал Бен. Тот факт, что «возвращаемое значение метода ruby ​​- это возвращаемое значение последнего оператора в теле функции», приводит к тому, что ключевое слово return редко используется в большинстве методов ruby.

def some_func_which_returns_a_list( x, y, z)
  return nil if failed_some_early_check


  # function code 

  @list     # returns the list
end
0
ответ дан 23 November 2019 в 22:23
поделиться

Это вопрос, какой стиль вы предпочитаете по большей части. Вы должны использовать ключевое слово return, если хотите вернуться откуда-то в середине метода.

1
ответ дан 23 November 2019 в 22:23
поделиться
Другие вопросы по тегам:

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