• Self или @ для атрибута класса?

    oh_shi
    @oh_shi
    Это одно и тоже. self.dir = вызывает dir=, который вы создали, когда указали attr_accessor :dir, выглядит это как-то так:
    def dir=(str)
      @dir = str
    end

    Потому логично использовать напрямую @, еще и на 4 символа короче=)
    Плюс @ что его можно использовать и без attr_accessor. Но если нужны геттер и сеттер, то лучше использовать attr_accessor, чем писать их самому, потому что ваш код будет на руби, а attr_accessor написан на С.
    Ответ написан
    5 комментариев