1. モジュールの概要
######モジュールは様々な用途で使用されます。
具体的には
- 継承を使わずにクラスにインスタンスメソッドを追加する。もしくは上書きする(ミックスイン)
- 複数のクラスに対して共通の特異メソッド(クラスメソッド)を追加する(ミックスイン)
- 関数的メソッドを定義する
- シングルトンオブジェクトのように扱って設定値などを保持する
上の定義だけでは分かりにくいので、実際にモジュールを作成しながら学んで行きましょう。
1. 2. モジュールの定義
モジュールの作り方
module モジュール名
モジュールの定義(メソッドや定数など)
end
(例)
module.rb
# helloメソッドを持つGreeterモジュールを定義
module Greeter
def hello
'hello'
end
end
一見クラスの定義と似ているがモジュールはクラスとは大きく違う
* モジュールからインスタンスを作成することはできない
- 他のモジュールやクラスを継承することはできない
参考文献
「プロを目指す人のためのRuby入門」