Rubyには「オープンクラス」という機能があり,使い方次第で強力な道具になります。今回はこのオープンクラスを解説します。オープンクラスを活用している「Ruby on Rails」のライブラリActiveSupportについても紹介します。 オープンクラスについての説明に入る前に,Rubyにおける通常のクラス定義について,復習しておきましょう。クラスFooを定義するには以下のように書きます。 この定義ではクラス名がFoo,FooのスーパークラスはBarになります。FooはBarクラスを継承しています。クラス文の内側にあるdefによってplus2メソッドが定義されます。FooクラスはスーパークラスであるBarクラスが備えているメソッドなどを受け継ぎますから,Fooクラスのオブジェクトは,Barクラスのメソッドに加えてplus2メソッドが使えるということになります。 このように新しいクラスを定義