Чем case/when отличается от if/elsif и когда что выбирать?
Что хотят услышать интервьюеры:
Сравнение: «case/when» обычно оценивают в паре с if/elsif. Выбор зависит от читаемости, Rails conventions, стоимости поддержки, безопасности, нагрузки и тестируемости.
Ответ:
Когда выбирать case/when: когда его свойства прямо решают задачу, а не просто выглядят привычно.
Плохой ответ: «так принято в Rails» без объяснения последствий.
case status when :paid then 'ok' else 'unknown' end