- - PR -
クラス設計について
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2003-10-03 08:38
こんにちは
確かVS.NET Enterprise Architect用のVISIOがあったような気がします。 C#とかの基本型が標準でついてきます。 それを使えばスケルトンの生成やリバースエンジュニアリングとかもできるようです。 | ||||
|
投稿日時: 2003-10-03 09:07
はい、VS.NET Ent. Arch.ですので、付いています。が、パッケージ化されていないんですよ。VBやC++の「基本」型は入っているのですが、MFCの型すらない!!ましてSystem.Windows.UI.Controlsなどの.NET Frameworkの型も… また、C#にもはき出してくれますが、UMLに「プロパティ」という概念がないため、プロパティも出せないのです。アクセスメソッドを置くしかない・・・いや、これはUML1.2の仕様なので、どうにもできませんが。。。 | ||||
|
投稿日時: 2003-10-03 10:16
私はプロパティを表現する場合ステレオタイプによる拡張を使っています。 要は属性のアタマに<<property>>をつけることでこの変数はプロパティとして実装するんだよ、と。 いちいちアクセサメソッド書くのめんどくさいし。 ステレオタイプってのはユーザが好きに拡張するためにあるのでこういう使い方はアリのはず。 もちろん、オリジナルに拡張したらドキュメントのどこかに「こういう拡張をしました」って書いておかないとダメダメだけど。 あるいはもう一つの解としてコーディング規約に「アクセサメソッドは使わないですべてプロパティとして実装する」と決めてやるのもいいかな。 | ||||
|
投稿日時: 2003-10-03 10:52
えっと、たぶんクラス図だけだとこれでもいけるのかな?と 思うんですが、コラボレーション図が絡むと ちょと面倒になっちゃうんですよね コラボレーション図だとメッセージのやり取りに記述できるのは メソッドになっちゃうじゃないですかぁ 単純なpublicな属性へのアクセスってのも含めて仕様って事であきらめてました。 クラス図メインならさいど6さんのやり方、コラボレーションメインなら やっぱり擬似アクセサって事になっちゃうのかなぁ〜と思いました。 他にこの辺のアイディアあったら教えて欲しい所ではあります。 どっちにしても単純にリバースエンジニアリングとかには使えなさそうでは ありますが・・・ | ||||
