モジュール
モジュールとは、Rubyにおける「インスタンスを生成できないクラス」のようなもののことです。
下記のように定義します。
module モジュール名
end
また、モジュールの中にはクラスを定義することもできます。
module Sample
class Test
end
end
この「Testクラス」は下記のようにして呼び出すことができます。
Sample::Test
クラスとモジュールの使い分けとして、具体的なオブジェクトを生成したい場合(インスタンスを生成したい場合)はクラスを使用し、処理だけ(メソッドなど)が必要な場合はモジュールを使用します。
またモジュールの中にクラスを定義するメリットは、Testクラスが複数ある場合に、下記のような記述でクラスごとに区別ができます。
module Sample1
class Test
end
end
module Sample2
class Test
end
end
Sample1::Test
Sample2::Test
こうすることで、同じクラス名でも定義することができ、それぞれ区別して使用することができます。