Согласен с большинством пользователей. Я склонен использовать в первую очередь
# Way 1
class Foo
def self.bar
puts 'class method'
end
end
Есть некоторые небольшие различия, если я правильно помню, которые показаны в беседах по метапрограммированию прагматичных программистов (которые я рекомендую), которые касаются того, как код класса вызывается и выполняется.
Они были довольно малы, и в основном с вещами, с которыми нам не придется иметь дело на обычной основе. Посмотрим, смогу ли я проверить их и опубликовать.