まつもと ゆきひろです
In message "[ruby-list:15285] Re: mail library"
on 99/07/08, Minero Aoki <aamine / dp.u-netsurf.ne.jp> writes:
|意見と疑問がいくつかあります。
|
|1 ファイル構造に関しては、ディレクトリに分けるのがいいと思います。
|ファイル名空間を独立させられるのがなによりうれしいです。
|(現在そうなっていないものの対策は、ディレクトリを分けたうえで
|リンクを張るか、ロードパスに入れておくか、または後述の案)
これには肯定的な感想を保っています。
|2 まつもとさんの提案では「ファイル名 = メインクラス名.downcase」が
|成立していますが、これはルールに入りますか?それとも偶然でしょうか?
偶然です。
|3 将来POP4がでても'pop'で参照できるほうがいいかと思ってPOPSessionと
|pop.rbにしたのですが、「3」はあるほうがいいでしょうか?
私はPOP4の可能性とか将来の上位互換性についての知識がないので、
判断を留保します。参考までにPythonはpoplib、PerlはNet::POP3
になっているようです。
|4 メインクラスはSMTPSessionでなくSMTPのほうがいいでしょうか。
|もしそうするのなら、SessionはProtocolに、現在のProtocolを
|Command(など)にしたほうがいいのではないでしょうか。
これはなかなか難しい問題をはらんでいますよね(また名前だ)。
しかし、「SMTPはプロトコル名なのでオブジェクト(クラス名)とし
てはSessionなりがつくはずだろう」という意見に対する反論を私
は持っていません。また、「SMTPという名前からもっとも直接的に
想起する名称はやはりSMTPだろう」という意見に対してもです。
つーことは、作者が決めればそれで良いということなんだと思いま
す。しかし、標準ライブラリであるこのシリーズ(POP,SMTP,将来の
NNTPなど)全体で揃えた方が良いと思うので、今話し合って決める
ことを望みます。
これまた参考ですが、Python, PerlではSMTPやNNTPをクラス名にし
ているようです。
|それからこれは追加提案ですが、ファイルが複数あるライブラリを使う
|ときには将来の拡張に備えて、次のようなメソッドを介することにしたら
|どうでしょうか。ポイントはコメントアウトしてあるところで、
|ディレクトリをつくらないライブラリもロードできます。
良く分からなかったんですが(packnameってナニ?)、これはどのよ
うに使うものなんでしょう?
まつもと ゆきひろ /:|)