2013-07-17 2 views
6

Ряд блогов и учебников имеют разные отступы, когда они реализуют оператор case. Каждый из них имеет разный отступ по отношению к линиям «когда». Существует ли наилучшая практика для отступов при использовании петли для случая?Ruby: Есть ли правильный способ отступов case?

+1

Существует не один правильный путь или даже одна лучшая практика. Вероятно, есть только несколько последовательных способов, которые наиболее популярны для читаемости. Вот только один пример, который популярен: https://github.com/styleguide/ruby – lurker

+0

приводят примеры .., которые заставили вас смутить, –

ответ

10

Консенсус в отношении отступа when на таком уровне, как и у case.

case sym 
when :foo then ... 
when :bar then ... 
else ... 
end 

Я думаю, что это хорошо установлено и не видел никаких достоверных источников, которые заявляют об ином.

+1

Я видел несколько случаев (не так часто, как ваш пример), в которых 'when' с отступом от нескольких пространств. И тогда бывают случаи, когда предложение 'when' не очень простое и представляет собой несколько строк, которые не показаны в вашем примере. – lurker

+0

'when' может расширяться за пределы строки. Это важная отправная точка. – sawa

+2

Я считаю, что это иногда называют «пикапной нотацией», как это было введено в книге «Пикакс» (http://pragprog.com/book/ruby/programming-ruby). – henrikhodne

2

Так я его и использовал. «Что происходит в случае« когда »должно быть на следующей строке и отступом.

case something 
when 'a' 
    what happens when 'a' 
when 'b' 
    what happens when 'b' 
when 'c' 
    what happens when 'c' 
end 
Смежные вопросы