高橋征義です。[ruby-list:23063] の続きです。 matz / netlab.co.jp (Yukihiro Matsumoto)さん: > ファイル操作関係が統合されるのは望ましいと思うので、加えるこ > とには賛成です。ただ、統合されず似たような機能が標準添付内で > 乱立するのは避けたいです。すでにマズい例がありますし、これ以 > 上増えるのは避けたい。 ……確かに。 > それぞれニーズの違いがありそうなので、それが統合できるかどう > かまず話合いが必要ではないでしょうか? そうですね。 ということで、まずは現状をまとめてみます。 現状でのftools.rbの機能は以下の通りです(「/」はalias)。 * メソッドの追加 * File::copy/cp * File::move/mv * File::compare/cmp * File::safe_unlink/rm_f * File::makedirs/mkpath * File::install * メソッドの変更 * File::chmod (verboseにしただけ) # syscopyをそのまま使いたい、ということはあるんでしょうか? これらのメソッドとほぼ等価な機能を持つものは、futils.rb(FileUtils) にもfileutils.rb(FileUtilities)にも含まれています。そして、それ以外の メソッドも両モジュールにはたくさんあります。 # ちなみに、FileUtilsとFileUtilitiesとでは、片方にしかない # メソッドがありますね。 また、verboseにするかしないかの変更について、fileutils.rb ではモジュール全体で一つのインスタンス変数を共有することに よって、全体が一気に変わりますが、ftools.rbの場合は個々の メソッド単位で指定します。 というわけで、考えなくてはならない点としては、 1. ファイルを操作する機能はモジュールの方がいいのか、それとも Fileクラスのクラスメソッドの方がいいのか? 2. verboseの指定はメソッド単位がいいのか、モジュール/クラス 単位がいいのか? 3. verboseを絶対指定しないために、モジュールなりクラスなりを 分ける必要はあるのか? というところでしょうか。 私は、 1. まあどっちでも(^^; 2. 少なくともモジュール・クラス単位で指定できた方がいいことは いいです。 3. あんまり感じませんが、どうなんでしょう。 (速度の面でのメリットを求めるひとはいそうな気がする) というところです。 高橋征義 (TAKAHASHI Masayoshi) Email:maki / inac.co.jp