質問: メソッド探索というのはどういったものなのでしょうか? 解らず困っています。 どなたか教えていただけないでしょうか? 宜しくお願いします。
回答: 私は 書籍 Metaprogramming Ruby: Program Like the Ruby Pros [Kindle版] でメソッド検索について学びました。(旧版は日本語訳が出てます) Web 上では メソッド探索順序 について次のページを見つけました。 Ruby言語仕様、メタプログラミング【パーフェクトRuby】 >Rubyのメソッド探索順序 > Rubyには特異メソッドを持つ特異クラスや、Mixinなどがありますが、それらを含むメソッド探索順序のまとめは次の通りです。 > > (1) Rubyインタプリタはレシーバの特異クラスからメソッドを探す > (2) レシーバの直接のクラス(特異クラスの親クラス)からメソッドを探す > (3) 親クラスを参照してメソッドを探す。継承ツリーの一番上まで繰り返す > (4) 引数を『メソッド名、引数』にして method_missing を呼び出す 書籍では、メソッド検索が図示もされています。 メソッド検索を理解することはとても大事です。 ぜひ、書籍、web 上の資料などを利用して理解を深めておくことをお勧めします。