Я предпочитаю if not вместо unless. Есть ли способ написать такое условие? Как люди вообще относятся к unless?
Ruby: если vs if not
Ответ 1
Надеюсь, это поможет вам:
https://github.com/bbatsov/ruby-style-guide
Я лично согласен с тем, что там написано, выбрав unless something over if !something для модификаторов и простых, а когда else предпочитает if.
Ответ 2
Я использую unless каждый раз, за исключением случаев, когда существует предложение else.
Итак, я буду использовать
unless blah_blah
...
end
но если есть условие else, я буду использовать if not (или if !)
if !blah_blah
...
else
...
end
После использования if ! годами и годами мне понадобилось некоторое время, чтобы привыкнуть к unless. В настоящее время я предпочитаю его в каждом случае, когда чтение его громко звучит естественно.
Я также поклонник использования unless
increment_by_one unless max_value_reached Я использую эти имена методов/переменных, очевидно, как пример читаемости - структура кода должна в основном следовать этому шаблону, на мой взгляд.
В более широком смысле структура должна быть: take_action unless exception_applies
Ответ 3
if not condition редко используется. Программисты Ruby (обычно поступающие с других языков) предпочитают использовать if !condition.
С другой стороны, если это широко не используется в случае, если есть одно условие, и если оно звучит читаемо.
Также см. смысл с Ruby, если только для дальнейших предложений, кроме стиля кодирования.