Ruby 逆引きレシピ レシピ078-096

Ruby 逆引きレシピ すぐに美味しいサンプル&テクニック 232 (PROGRAMMER’S RECIPE)

Ruby 逆引きレシピ すぐに美味しいサンプル&テクニック 232 (PROGRAMMER’S RECIPE)

今日はレシピ 078 から 096 までを読みました。

オブジェクト指向の章ですが、Ruby の言語の機能の紹介って感じです。

レシピ 078 より、 ||= 記法による遅延初期化の手法。これは変数に入れる値で nil と false を区別する必要がある時にはうまくいかないことがあるので注意が必要ですね。

レシピ 079 より、 attr_reader によるゲッター定義。「コレクションを保持しているインスタンス変数については、インスタンス変数を直接参照することは許さず、利用する側の目的を満たすメソッドをそれぞれ用意するようにしましょう」うう、面倒でついやってしまいます。反省です。

レシピ 083 より。 AASM (Act As State Machine) ライブラリの紹介。 AASM 便利そうですね。さっそくインストールしてみました。使い所をみつけて使ってみたい。

レシピ 085 より、dup や clone でオブジェクトがコピーされた時に initialize_copy が呼ばれるんですね、知りませんでした。これも使い所があれば思い出して使いたいです。あんまりないかも。