Вы передумали проблему.
Я использую %w
, когда это проще, чем писать регулярное определение массива или более визуально различаться.
Это выбор программиста и часто сводится к вопросу: что проще в обслуживании?
При определении отдельных слов он делает гораздо больше смысла использовать %w
:
ary = %w[a b c foo bar]
Чем это делает использование:
ary = ['a', 'b', 'c', 'foo', 'bar']
Однако, если вы встроили пространства вы должны поддерживать его становится более понятным для использования определения нормального массива:
ary = ['a b c', 'foo bar']
Co mpared к:
ary = %w[a\ b\ c foo\ bar]
Как я рассказываю свою команду во время анализа кода, посмотрите на код, как вы пишете, и наблюдать за работой ваш мозг делает, чтобы расшифровать его. Пойдите с любыми потоками проще и легче поддерживать код. Мы пишем его один раз, но он может поддерживаться много раз, поэтому облегчите тем, кто следует за нами.
Совершенно никакой разницы во времени создания для определений массива. Оба будут анализироваться, поскольку Ruby начинает интерпретацию кода и только тогда. Даже если бы была разница, вы не могли измерить ее с помощью эталона, и это произошло бы однажды, и какая разница, которую она могла бы сделать во время выполнения сценария?
Это во многом то, что я понял. Я просто сидел сегодня и начал думать об этом. Благодарю. –