attr_reader
attr_readerメソッドは、クラスやモジュールにインスタンス変数を読み出すためのアクセサメソッドを定義します。
class Book attr_reader :title, :price def initialize(title, price) @title = title @price = price end end book = Book.new("プロを目指す人のためのRuby入門", 3218) puts book.title
このように変数定義をコンパクトにできる。
上記のコードをそれぞれメソッド定義すると、下記のように長くなる。
class Book
def initialize(title, price)
@title = title
@price = price
end
def title @title
end
def price @price end end book = Book.new("プロを目指す人のためのRuby入門", 3218) puts book.title
プログラマーは怠惰であれ!