From: matz@... (Yukihiro Matsumoto) Date: 2002-06-02T01:45:03+09:00 Subject: [ruby-dev:17266] Re: IO#size まつもと ゆきひろです In message "[ruby-dev:17263] Re: IO#size" on 02/06/01, Wakou Aoyama writes: |> 現在、FileにあるメソッドはすべてFileでしか意味のないメソッド |> ですが、sizeはIOでも意味がある(とユーザが期待する)だろうとい |> う点で異なります。 | |それと同じく、Tempfile というのは、その名前からも、File クラスのサブク |ラス的イメージを持つのは普通の事と思われ、その Tempfile クラスに #size |があれば、size は File でも意味があると期待するのでは無いでしょうか? なにが「それと同じく」なのかよくわかりません。 Tempfileクラスのドキュメントにsizeがあったからという理由で、 「Fileにあるはずだ」と考える人は少ないと思います。 「Fileにあるべきだ」と思う人は(青山さんのように)いらっしゃる でしょうが、その場合には以下の理由で「File#sizeは誤解を招く ので良くない」と説明します。 sizeは「available data size」という意味と「file size」の二 通りに解釈できるので、不適切な名前です。 |そのような事からも、Tempfile#size ではなく、StringIO#stat の方が良いだ |ろうと思ったのですが... 何度も繰り返してますが、StringIO#statは意味がないだけでなく 誤解を招くという点でまずいです。 まつもと ゆきひろ /:|)