プロを目指す人のためのRuby入門[改訂2版] 言語仕様からテスト駆動開発・デバッグ技法まで

サポートページ

この記事を読むのに必要な時間:およそ 0.5 分

お詫びと訂正(正誤表)

本書の以下の部分に誤りがありました。ここに訂正するとともに,ご迷惑をおかけしたことを深くお詫び申し上げます。

(2022年4月1日最終更新)

P.325,下から2行目

rainbow.rbを開いて、Rainbowableモジュールを定義します。
rainbowable.rbを開いて、Rainbowableモジュールを定義します。

(以下2021年12月23日更新)

P.148,1つめのサンプルコード

dimenstions = [
  [10, 20],
  [30, 40],
  [50, 60],
]
# dimenstions.each { |dimenstion| p dimenstion } と書いたのと同じ
dimenstions.each { p _1 }
#=> [10, 20]
#   [30, 40]
#   [50, 60]
dimensions = [
  [10, 20],
  [30, 40],
  [50, 60],
]
# dimensions.each { |dimension| p dimension } と書いたのと同じ
dimensions.each { p _1 }
#=> [10, 20]
#   [30, 40]
#   [50, 60]

P.148,2つめのサンプルコード

# dimenstions.each { |length, width| puts "#{length} / #{width}" } と書いたのと同じ
dimenstions.each { puts "#{_1} / #{_2}" }
#=> 10 / 20
#   30 / 40
#   50 / 60
# dimensions.each { |length, width| puts "#{length} / #{width}" } と書いたのと同じ
dimensions.each { puts "#{_1} / #{_2}" }
#=> 10 / 20
#   30 / 40
#   50 / 60

P.432,2つめのサンプルコード

split_proc #=> #<Proc:0x0000000312f9a0(&:split)>
split_proc #=> #<Proc:0x0000000312f9a0(&:split) (lambda)>

(以下2021年12月14日更新)

P.386,9.4.6項の最後の文

ほかの章と同じく、例題の解説が終わったら再び例題処理に関する応用的なトピックを説明していきます。
ほかの章と同じく、例題の解説が終わったら再び例処理に関する応用的なトピックを説明していきます。

(以下2021年12月8日更新)

P.124 一番下のサンプルコード

def to_hex(r, g, b)
  [r, g, b].inject('#') do |hex, n|
    hex + n.to_s(16).rjust(2, '0')
  end
end
def to_hex(r, g, b)
  [r, g, b].sum('#') do |n|
    n.to_s(16).rjust(2, '0')
  end
end