バンビのブログ

駆け出しのエンジニアです!日々の疑問など備忘録として書いていきます。

Ruby

特異メソッドと特異クラス

この特異メソッドと特異クラスっていつも見かけるけど、なんやねん。 読んでも読んでもわからんってちょうど一年前に思ったので解説します。 特異メソッドとは 単一オブジェクトに対して定義できるメソッドのことをさします。 クラスメソッド class Test # s…

Rubyメソッド探索方法

※まず最初に継承チェーンを読んでからメソッド探索方法を読みましょう。 自分が作成したメソッドたちがどのような順序で探索されて、実行されているか覚えておこう! 継承でのメソッド探索 # クラスとメソッド『hello』を作成 class Class1 def hello puts '…

継承チェーン

継承チェーンとは、そのオブジェクトがなんのオブジェクトを継承しているかのこと。 Rubyではオブジェクトの大元はBasicObjectというオブジェクトです。継承しているオブジェクトをたどっていくと行き着く先はBasicObjectになります。 その過程で継承してい…

【Ruby】特異クラスってなに?シンタクスシュガーって?

特異クラスってなに?シンタクスシュガーって? 最近Railsで開発をしているときに、恐らく僕の師匠が書いたであろうコードを見つけた。 class Hogehoge class << self def call(*args) new(*args).call end end end こんな感じのコードだったんだけど、こん…