「動的メソッド」の概念を理解するのに苦労しています。このブログ投稿は役に立ちました。
「動的メソッド」は、実行時に計算されてから定義される名前または本体を持つメソッドです。
しかし、メソッドが動的に定義されていることをどのように確認できますか?
class Foo
def self.bar
puts 'bar is statically defined'
end
define_method(:baz) do
puts 'baz is dynamically defined'
end
end
Foo.singleton_methods.include? :bar #=> true
Foo.instance_methods.include? :baz #=> true
#??? shouldn't this be false according to the claim of 'dynamic methods'?