Средство доступа атрибута в Ruby является способом объявить доступность атрибута (чтение и запись) через средства метапрограммирования Ruby.

Использование

Учитывая любой класс Ruby, можно использовать attr_accessor метод как так:

class Car attr_accessor :speed end 

Это позволяет нам читать и записать speed переменная экземпляра любого экземпляра Car:

my_car = Car.new my.car.speed = 100 my.car.speed # => 100 

attr_accessor метод реализует эту функциональность путем создания новых методов для класса, это было призвано.

Внутренности

Поэтому использование attr_accessor на самом деле эквивалентно следующему:

class Car attr_reader :speed attr_writer :speed end 

который в свою очередь совпадает с

class Car def speed @speed end def speed=(v) @speed = v end end 

Дальнейшее чтение