Index: [Article Count Order] [Thread]

Date:  Sat, 16 Aug 2003 22:09:58 +0900
From:  Hidehiko AKASAKA <akasaka.h@....com>
Subject:  [XP-jp:04611] Re: 責務,変更,シンプル (was Re: 「 An ExtremePro)grammingEpisode 」の翻訳版を
To:  extremeprogramming-jp@....jp
Message-Id:  <20030816215627.AB88.AKASAKA.H@....com>
In-Reply-To:  <3F3DDBCB.E079137E@....jp>
References:  <20030816160024.00A9.AKASAKA.H@....com> <3F3DDBCB.E079137E@....jp>
X-Mail-Count: 04611

赤坂です。

Kenji HIRANABE <hiranabe@....jp> san wrote:

> 平鍋です.
> まずは,こちらから.

了解しました。

> > Kenji HIRANABE <hiranabe@....jp> san wrote:
> > 
> > > (A)現実の世界と直接対応【Direct Mapping Principle】(by Meyer)
> > > (B)シンプルである(直接対応でないが,簡単である)(by Beck)
> > >
> > > という2つの分担方針があるか,と思います.どちらの場合にも当てはまる,
> > > 責務分担の原則は,次に原則に照らして評価できます.
> > 
> > 川俣さんのシンプルが(B)に対応するのだと思いますが、
> > 
> > 「シンプル」で、かつ「自然な役割ではない」
> > 
> > というケースを想定できないということです。
> > 「シンプル」に作ったものは「自然な役割」に落着いているのではないかと。
> 
> 以前,Kent Beck に矢崎さんが果敢に試みた有名な質問があります.
> 
> 「ユーザ情報」クラスに「電話番号」がある場合電話クラスを作りますか?
> 
> class User { String telephoneNumber; }
> 
> が Kent Beck のシンプルな回答.
> 
> class User { Telephone telephone; }
> class Telephone { String number; public void call(); }
> 
> が現実世界に近いモデリングかな.これについてどう思いますか?

矢崎さんがどういう状況で質問されたか想像できないので、
なんとも難しいのですが(^^;;

Kent Beck氏がどういうコンテキストを想定したのか分かりませんが、
少なくとも私は Kent Beck氏 のようなモデルは作らないと思います。
# どういうコンテキストだとTelephoneが有効なのだろう??

# 私は、万が一、Telephoneを分割したとしても、
# call()メソッドをここには置きません。

> ちなみに,羽生田さんの回答は,
> 「Kent Beckにモデリングの質問をしてはいけない」 ^^;

さすが、羽生田さんは大人ですね(^^;;

・・・ということは、(A)現実世界と(B)シンプルは違うということですか?

私の考えている(A')現実世界は、矢崎さんのユーザー情報なんですけどね。

オブジェクト指向の現実世界は、現実世界と似て非なるものですが、
妥当なクラス(つまり、自然な役割分担)で構成されるものだと思います。

# 結局、主観に満ちた(上手く説明できない)世界なのかしら??

矢崎さんのユーザー情報は(B)シンプルなんですか?
# 私は(A')現実世界だと思ってるんですけど。

ではでは。

--
赤坂 英彦 (Hidehiko AKASAKA)
akasaka.h@....com