В Ruby Koans раздел about_hashes.rb содержит следующий код и комментарий:
def test_changing_hashes
hash = { :one => "uno", :two => "dos" }
hash[:one] = "eins"
expected = { :one => "eins", :two => "dos" }
assert_equal true, expected == hash
# Bonus Question: Why was "expected" broken out into a variable
# rather than used as a literal?
end
Я не могу понять ответ на бонусный вопрос в комментарии - я пробовал на самом деле делать замену, которую они предлагают, и результат тот же. Все, что я могу понять, это то, что оно предназначено для читаемости, но я не вижу общих советов по программированию, подобных тем, которые вызываются в другом месте этого учебника.
(Я знаю, это звучит как что-то, на что уже можно было бы ответить, но я не могу выкопать что-либо авторитетное.)