Я новичок в Ruby, и я был удивлен, когда узнал, что все объекты истинны, кроме nil и false. Даже 0 это правда.
Хорошая особенность этого свойства языка в том, что вы можете написать:
if !variable
# do stuff when variable is nil
end
Мои коллеги, которые являются более опытными разработчиками Ruby, настаивают, чтобы я выбрал это вместо использования .nil? вот так:
if variable.nil?
# do stuff when variable is nil
end
Однако я считаю, что последний вариант лучше по двум причинам: 1. Я думаю, что он более объектно-ориентирован, особенно в языке, подобном Ruby, где все является обменом объектами и сообщениями. 2. На мой взгляд, он более читабелен, даже если он менее компактен.
Я делаю ошибку "новичка" здесь?