Index: [Article Count Order] [Thread]

Date:  Tue, 13 Sep 2005 13:20:27 +0900
From:  idei <idei-hideyuki@....jp>
Subject:  [modeling-dojo:00462] Re: 複数の側面から分類したいとき
To:  modeling-dojo@....jp
Message-Id:  <20050913042034.35E991BB5@....jp>
In-Reply-To:  <20050913024125.56090.qmail@....jp>
References:  <20050913024125.56090.qmail@....jp>
X-Mail-Count: 00462

> ゲンジツ(?)には、
> 「メジャーな言語(Javaとか)での実装という観点から」という風に
> 話を絞るという手は有るかと思います。

実装を例にしたのは、逆説的ですが、そのほうが、事実が良く
見えるかな、と思ったからです。

モデリングをする最終目的は何か、といえば、
コードを書くことだというのが僕の認識です。
そういう意味からすると、実装とモデリングはギャップが
少ない方が好ましいですよね。
そもそもオブジェクト指向というのは、手続き型開発に
あった、モデリング、設計、実装のギャップを埋めるために
出てきた技術だと認識しています。

だからといって、モデルを歪めても良いのか、というと
僕も、出来るならば、歪めない方が良いと思います。
しかし、ここの例にあった、「私」、「起きている私」、
「寝ている私」では、汎化を使わずに、委譲を使った関係に
することで、本質が見えるカナと思ったわけです。

# オブジェクト指向の難しいところは、正解が1つでは
# ない、ということですね。

汎化 = is a 関係なわけですが、
「私は○○○の役割がある」とか
「私は×××の状態がある」などと別の表現に
置き換えることができるのならば、
汎化を使わないほうが、返って現実をより良く表すことに
なるのかな、と思います。

「役割」については、汎化を使ってはだめ、というのは
ほとんどの人が異論を挟まないと思いますが、
「状態」については、それぞれ意見が異なるという
ことでしょうね。

それは、分析ではなく、設計時に考えれば良いことだ、
と言われれば、それまでですが...

idei