みつじです。
SadMan さん、
お返事ありがとうございます。すぐに返事を書きたかったのですが、
仕事中だったので パターン5 が先になってしまいました。すいません。
>多重継承でスッキリするモデルが有ったとしてもjavaでは多重継承ができないので、
>多重継承を用いるかどうかは先に決定しておかなければなりませんね。
そうですね、ただそうなると実装方法が決まってないと概念モデルを
描けないことになって、現実に対してシステムが制約をかけてるみたいな
ことになるので、ちょっとおかしな感じがします。
たぶん概念モデルレベルで多重継承が必要になるようなことはないのではないか
と思っています。
または、オブジェクト指向のデータをリレーショナルデータベースに
マッピングするようテクニックやツールがあるように、多重継承を使ったモデル
を多重継承なしで実装するテクニックやツールが必要ってことかもしれません。
具体的に既に存在してるのかどうかとかは全然知りませんけどね。
>まず、多重継承にかかわらず
>処理/未処理の状態というのは遷移するので継承とするのはマズイ気がします。
>たしかに実際には永続化とインスタンス化の過程で異なるクラスをインスタンス化
>できるとは思いますが
>概念的にはモデルなので状態の変化によって異なるクラスのインスタンスになるの
>に違和感が有ります。
これは好みの問題だと思うのですが、モデコン2で児玉さんに動的分類を
教えていただいてから、私はそっちを気に入って使ってます。
児玉さんの師範代モデルだと、「取引」の「完了」「未完了」で使われてる
部分ですね。
http://www.objectclub.jp/community/modeling/contest2_instructor/02/class.png
>要望かバグかというのは普遍的なのでクラスでも良いとは思いますが、
>わたしでしたら、分類に関するメンバをアグリゲートします。
パターン3の亜種ですね。分類の種類が増えたときのことを考えても、
動的分類よりこっちのほうが自然なのかなと思えてきました。
>クラス図で「処理状態を持つ修正提案」クラスがありますが
>
>その名のとおり、修正提案クラスが処理状態クラスを持つ
>ではなぜダメなのでしょうか?
私が一番好きなパターンです。
分類が1系列のときは、SadManさんは嫌いな方法かもしれないけど
動的分類で描けるのに、2つになったとたんに使えなくなるのが、
気に入らないのです。
やはり無理に動的分類にこだわる必要はないということなのでしょうかね。