電子書籍の厳選無料作品が豊富!

Rubyでいろいろなツールを作っているのですが、共通するプログラムを抜き出して別のファイルにしようとしています。
今までは、xxx.rbに共通するプログラムを集めてrequireで読み込んでいたのですが、
webとか「たのしいRuby」を調べていたらモジュールとかがあるのがわかりました。

それで、モジュールを使って(モジュールにまとめて)みようと思ったのですが、
何か、メリットやデメリットはあるのでしょうか?

A 回答 (2件)

モジュールを使うのは2種類の目的があります。

どちらかに該当すれば使えば良いでしょう。
1.複数のクラスで同じ機能を使う(多重継承)
例: モジュール Comparable を使うと、<=> だけ定義すれば他の比較演算子が自動的に定義される

2.名前空間の分離
クラスや定数、メソッドなどの名前がぶつからないように、親となる名前空間を作る。
ライブラリの中の構造の整理など。
例: 「太郎」という名前では区別できないので、「山田::太郎」、「鈴木::太郎」を使う。

この回答への補足

回答ありがとうございます。
クラスについては今の私には難しすぎて使うことは当分なさそうです。

となると、名前がぶつからないようにできるということが(今の私にとっての)メリットということになりそうですが、
モジュールを使わずに、メソッドの名前をライブラリごとに変える、たとえば、ライブラリの名前をメソッドの先頭につけても同じ(たとえば「山田太郎」、「鈴木太郎」という名前にする)ということになるのでしょうか?

補足日時:2013/05/13 08:41
    • good
    • 0

>モジュールを使わずに、メソッドの名前をライブラリごとに変える、たとえば、ライブラリの名前をメソッドの先頭につけても同じ(たとえば「山田太郎」、「鈴木太郎」という名前にする)ということになるのでしょうか?



別にかまいません。
ただし、家庭内でも「太郎」でなくフルネームで呼び合うことになるので、ややうっとおしいか。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
とりあえず、モジュールでいろいろ試してみます。

お礼日時:2013/05/17 07:40

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!