[#23168] File.fnmatch のリファクタリング — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>

山本です。

13 messages 2004/03/08

[#23192] File.fnmatch と Dir.glob の非互換部分 — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>

山本です。

19 messages 2004/03/13
[#23194] Re: File.fnmatch と Dir.glob の非互換部分 — matz@... (Yukihiro Matsumoto) 2004/03/13

まつもと ゆきひろです

[#23195] Re: File.fnmatch とDir.glob の非互換部分 — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/03/14

山本です。

[#23196] Re: File.fnmatch とDir.glob の非互換部分 — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/03/14

山本です。

[#23260] Re: File.fnmatch とDir.glob の非互換部分 — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/03/30

山本です。

[#23261] Re: File.fnmatch とDir.glob の非互換部分 — matz@... (Yukihiro Matsumoto) 2004/03/30

まつもと ゆきひろです

[#23265] Re: File.fnmatch とDir.glob の非互換部分 — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/03/30

山本です。

[#23238] Re: [ruby-cvs] ruby, ruby/lib, ruby/lib/rss, ruby/sample/openssl: * lib/logger.rb: trim tail space of each line. no user visible change. — Kouhei Sutou <kou@...>

須藤です.

10 messages 2004/03/27

[ruby-dev:23242] Re: [ruby-cvs] ruby, ruby/lib, ruby/lib/rss, ruby/sample/openssl: * lib/logger.rb: trim tail space of each line. no user visible change.

From: "NAKAMURA, Hiroshi" <nakahiro@...>
Date: 2004-03-27 14:01:22 UTC
List: ruby-dev #23242
なひです。

# すいません、さきに出て行ったメイルのMessage-IDがヘンでした。

> From: "Kouhei Sutou" <kou@cozmixng.org>
> Sent: Saturday, March 27, 2004 10:02 PM

> > なひ個人の好みだけ言えば、定義順で挙動が変わる(そのファイルだけ見ても
> > わからない)のは、好きじゃないです。
> 
> 定義は一ヶ所で行われていた方がいいということですよね?

そうですね。

ちなみになひもsoap4rで、wsdl/soap/*をrequireするかどうかで、
WSDL::XMLSchema::*の挙動を変えている(XMLSchema汎用のクラスに、
いくつかSOAP用のメソッドを追加している)んですが、できれば
やめたいと思ってます。

> 例えば今回の場合は,以下のように,メソッド呼び出しで代替する
> と,定義が分散されていない気がするようになりますか?

というわけで、上記のように、根本的な好き嫌いの原因は、
別のところにもありそうです。とりあえず今回のなひの勝手な変更は
無視してください。^^;

> From: "Yukihiro Matsumoto" <matz@ruby-lang.org>
> Sent: Saturday, March 27, 2004 8:29 PM

> |# 以下、他人の好みに興味がある人向け;
> |
> |なひ個人の好みだけ言えば、定義順で挙動が変わる(そのファイルだけ見ても
> |わからない)のは、好きじゃないです。
> 
> 私は定義順の問題がない場合(そのファイルが明示的にrequireして
> いるファイルで定義されているクラスとか、組み込みクラスとか)
> には、クラスの再定義にはスーパークラスを省略するのが好みです。
> 元の定義でスーパークラスが変更される場合に強いからです。

# 以下、他人の好みに(以下略

なひはこの「強さ」はあまり好きでありません。
時によっては、あるコードを書いたとき以後、元の定義でスーパークラスが
変更されたら、間違いなくエラーになって教えてくれるのが、"強い"クラスだと
感じます。

時によっては、明示的なんだから省略したいときもある、というのは
わかります。。。確かに組み込みクラス(たとえばStandardError)
に定義を追加するようなのは、StandardErrorとExceptionの間に
もう一人(例えばChainedExceptionとか)入っても、あまり気にならないかも。

「別ファイルで定義されているクラスに定義を追加するのはよくないことだ
  →よくないことはスマートに書けるべきでない == 醜くあるべきだ」
というのが、なひの中では大きいのかな。

In This Thread