Re: Try Ruby! 第1章

msngさんがstartRubyというブログを始めたようです。せっかくなんで少しだけ補足しとこうかな。

Try Ruby! 第1章

演算子(一部除く)は再定義可能なメソッド

Rubyの演算子は一部を除いて再定義可能なメソッド。例えば「+」演算子をメソッド呼び出しと同じ構文で書くことができる。
1 + 1
#=> 2
1.+(1)
#=. 2
メソッド呼び出しの構文
オブジェクト.メソッド名(引数1, 引数2, ….)
ちなみにこの構文のオブジェクトのことをレシーバって言います。なぜかと言うと、メソッドを呼び出すことを「オブジェクトにメッセージを送る」と表現するので、オブジェクトはメッセージを受け取る(レシーブする)側なのでレシーバ。

ちなみに一部のメソッドは組込み演算子なので再定義することは不可能です。=とか!とか&&とかは無理。そこらへんはリファレンスを見るように。

mathオブジェクトとtextオブジェクト

これは多分、Numeric(数値)クラスとString(文字列)クラスのオブジェクトって意味だと思う。
1.class
#=> Fixnum
“aaa”.class
#=> String
classメソッドはオブジェクトが何のクラスのオブジェクトなのかを調べるメソッド。つまり1はFixnumクラスのオブジェクト、文字列aaaはStringクラスのオブジェクトってこと。

なんで最初にNumericクラスって言ってるのに、1のクラスがFixnumクラスなのかと言うとFixnumクラスはNumericクラスのサブクラスだから。他にもFloatクラスとかある。

msngさんがんばって!

そんなわけで適当に補足してみました。細かいところはリファレンスにも載ってるから一度見てみるといいと思う。最近503エラーがしょっちゅうでてるけどね・・・

Rubyリファレンス

UK STUDIOはstartRubyを応援しています。