Facilitando la creación de accesores

Dado que muchas variables instancia necesitan métodos accesores, Ruby proporciona abreviaturas para las formas convencionales.

Tabla 24-1. Accesores

AbreviaturaEfecto
attr_reader :vdef v; @v; end
attr_writer :vdef v=(value); @v=value; end
attr_accesor :vattr_reader :v; attr_writer :v
attr_accesor :v, :wattr_accesor :v; attr_accessor :w

Tomemos ventaja de esto y añadamos información fresca. Primero pediremos la generación de un escritor y un lector y luego incorporaremos la nueva información en inspect.

    ruby> class Fruta
    ruby|   attr_accessor :condition
    ruby|   def inspect
    ruby|     "una " + @kind + " " + @condition
    ruby|   end
    ruby| end
    nil
    ruby> f2.condition = "madura"
    "madura"
    ruby> f2
    una banana madura