[#21157] あったらうれしいメソッド to_n, to_n!, to_s! — ogino@...

荻野です。あったらうれしいメソッドということで書いてみます。

16 messages 2000/03/03

[#21159] メソッドの入り口 — ogino@...

荻野です。もうひとつご指導ください。

93 messages 2000/03/03
[#21170] Re: メソッドの入り口 — Shin-ichiro Hara <sinara@...> 2000/03/03

原です。

[#21243] Re: メソッドの入り口 — keiju@... (石塚圭樹) 2000/03/07

けいじゅ@日本ラショナルソフトウェアです.

[#21247] Re: メソッドの入り口 — 中村暁史 Nakamura Akifumi <BXQ04723@...> 2000/03/07

[#21267] 引数コピーとオブジェクト指向 (Re: メソッドの入り口) — Hideto ISHIBASHI <s34204@...> 2000/03/08

石橋秀仁です。

[#21272] Re: 引数コピーとオブジェクト指向 (Re: メソッドの入り口 ) — 中村暁史 Nakamura Akifumi <BXQ04723@...> 2000/03/08

[#21276] Re: 引数コピーとオブジェクト指向 (Re: メソッドの入り口 ) — nobu.nakada@... 2000/03/09

なかだです。

[#21279] Re: 引数コピーとオブジェクト指向 (Re: メソッドの入り口 ) — ogino@... 2000/03/09

oop未満の世界観の荻野です。

[#21282] Re: 引数コピーとオブジェクト指向 — Tomoyuki Kosimizu <greentea@...2.so-net.ne.jp> 2000/03/09

越水です。

[#21285] Re: 引数コピーとオブジェクト指向 — ogino@... 2000/03/10

荻野です。

[#21293] Re: 引数コピーとオブジェクト指向 — Matsuo Hisanori <hisanori@...> 2000/03/10

松尾です。

[#21297] Re: 引数コピーとオブジェクト指向 — ogino@... 2000/03/10

荻野です。

[#21302] Re: 引数コピーとオブジェクト指向 — 土岐 仁謙 <toki@...> 2000/03/10

土岐です。

[#21371] Re: 引数コピーとオブジェクト指向 — Matsuo Hisanori <hisanori@...> 2000/03/13

松尾です。

[#21374] Re: 引数コピーとオブジェクト指向 — TADA Tadashi <sho@...> 2000/03/13

ただただしです。

[#21365] Re: 引数コピーとオブジェクト指向 — Matsuo Hisanori <hisanori@...> 2000/03/13

松尾です。

[#21280] raise non-Exception object — Kenichi Komiya <kom@...3.rim.or.jp>

24 messages 2000/03/09
[#21283] Re: raise non-Exception object — nobu.nakada@... 2000/03/09

なかだです。

[#21315] Re: raise non-Exception object — Kenichi Komiya <kom@...3.rim.or.jp> 2000/03/11

[#21342] Re: raise non-Exception object — nobu.nakada@... 2000/03/12

なかだです。

[#21384] ruby 1.4.4 — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

35 messages 2000/03/13

[#21442] 配列内のソート — Takayuki Tanaka <tanaka@...>

こんにちは Tanです。

16 messages 2000/03/15

[#21583] ruby for Web — TAKAHASHI Masayoshi <maki@...>

高橋征義です。

27 messages 2000/03/22
[#21584] Re: ruby for Web — "NAKAMURA, Hiroshi" <nakahiro@...> 2000/03/22

なひです.

[#21649] net-1.1.10 — TAKAHASHI Masayoshi <maki@...>

高橋征義です。net/http 使いたおし中。

17 messages 2000/03/27

[#21669] new version of mod_ruby & eRuby — Shugo Maeda <shugo@...>

前田です。

14 messages 2000/03/28

[ruby-list:21267] 引数コピーとオブジェクト指向 (Re: メソッドの入り口)

From: Hideto ISHIBASHI <s34204@...>
Date: 2000-03-08 08:20:19 UTC
List: ruby-list #21267
石橋秀仁です。

Subject: [ruby-list:21247] Re: メソッドの入り口 
Message-ID: <38C5224C280.FB2A.BXQ04723@nifty.ne.jp>

> お世話になっております。 A.中村です。

> On Tue, 7 Mar 2000 19:45:20 +0900
> keiju@Rational.Com (石塚圭樹) wrote:
> 
> > RubyにかぎりらずC++などでもすが, コピーを(多用)しているかどうかで, その
> > 人がオブジェクト指向を理解しているかどうかの判断に使っています.

> そぉゆぅアイデンティティを認めるところ「から」ooは始まるっていうか。

> そういう価値観の元でオブジェクトを渡すってことは、
> なんてーか「渡してすぐにコピーする」というよりも
> 渡した変数を渡し先メソッドの中の「どこかで」
> コピーするって感じで、もはや引数の扱いの問題じゃ
> ないかもですね。そういう意味では「コピーしない」
> と一律に言いきってしまうってのも、そんなに暴論じゃ
> ないのかも。

「引数の扱いじゃない」というのは正しいと思います。
オブジェクト指向を理解していないC++やJavaのプログラマは多いですが、
その根はかなり深いでしょう。

計算の進行を、「関数の入出力」で考えるか、「オブジェクトの
メッセージ交換」で考えるかがポイントだと思います。「設計」とは
「モジュール分割」だ、と信じている人は、クラス図が「木(tree)」
になる設計しか理解できない。たしかに階層構造は一見美しい。

以下のクラス図は「網(network)」です。FooとBarが相互に依存しています。
FooがBarを生成しますが、必ずしも「FooがBarの親である」とは言えません。

+-----------+ foo              +----------+
| Foo       |<-----------------| Bar      |
+-----------+              bar +----------+
| bar:Bar   |----------------->| foo:Foo  |
+-----------+                  +----------+

class Foo              | class Bar
  def setBar(bar)      |   def initialize(foo)
    @bar = bar         |     @foo = foo
  end                  |   end
end                    | end

foo = Foo.new
bar = Bar.new(foo)
foo.setBar(bar)

#1 プロポーショナルフォントで読みづらくて申し訳ない。
#2 こういうascii graphics用のドローツール(UNIX)ってありませんか (^^;

上のクラス図では、オブジェクト図も「FooとBarが互いに持ち合う」形を
考えています。「foo:Fooの@bar == bar:Bar かつ barの@foo == foo」です。
ここでの「引数コピー」は、設計を台無しにします。まさに、
「アイデンティティ」の危機ですね。


というわけで、"[ruby-list:21221]"までの「メソッドの入り口」の
スレッドを読んで、「あー いっぺん 言うてみたかった」のでした。

# 「それは違うぞ」という意見もお聞きしてみたいです。

Hideto ISHIBASHI

In This Thread