トップページ⇒tech
966コメント334KB

UML皆でお勉強しよ♪

■ このスレッドは過去ログ倉庫に格納されています
0001ニュージーランド漁夫NGNG
  Λ_Λ  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ( ・∀・)< お勉強しよ♪
 (    )  \____________
 | | |
 (__)_)
0486デフォルトの名無しさんNGNG
Java言語で学ぶデザインパターン入門
で説明されてる集約(aggregation)は
UMLでいうところのAssociationですか?

この本の用語通りのUMLエディタがないので
よくわからないです。
0487デフォルトの名無しさんNGNG
>>486
書籍なりネットで調べればいくらでも書いてあると思うが。。。
関連 ( association ) の特別な場合が集約 ( aggregation )。a-part-of の関係だ。
より強い集約がコンポジション ( compositon )。has-a の関係。

http://www.atmarkit.co.jp/fjava/rensai/uml02/uml02.html
http://www-6.ibm.com/jp/developerworks/components/010427/j_tip-objrel.html
0488デフォルトの名無しさんNGNG
CADでUML使う人っている?
ダイグラムをCADで書くってことじゃなく、車などの製品の構成要素をモデリングするって使い道。
あんまり聞かないんだけど・・・。
0489アラスカ漁師NGNG
  Λ_Λ  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ( ・∀・)< アゲ!
 (    )  \____________
 | | |
 (__)_)
0490デフォルトの名無しさんNGNG
>>476
年間保守もつけた?
どういうライセンスで買うか悩み中。
フローティングライセンスとかもあるしね。
0491デフォルトの名無しさんNGNG
>>488
いまは、UMLでデータベースもXMLも表せるからなぁ。
標準の表記とかはないけど、関連に対して自分でステレオタイプを定義すればできると思うよ。
ちゃんと定義すれば業界標準にできるかもね。(まぁ、布教活動のほうが大変だろうけど。)
0492デフォルトの名無しさんNGNG
揚げ
0493 NGNG
  Λ_Λ  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ( ・∀・)< このスレって人気あるの?
 (    )  \____________
 | | |
 (__)_)
0494ЩNGNG
そろそろゴールドレベル取った人いる?
0495デフォルトの名無しさんNGNG
UMLで単に関数(メソッド)が呼ばれる順序を表現するときってどんな図を書けばいいの?

↓例えばC++でこんなクラスの内部構造を説明するための図を書きたいんだけど…。

class CGoodClass
{
public:
  void niceFunction()
  {
    int n = a();
    b(n);
  }
private:
  int a(){ return …; }
  void b(){ … }
}
0496495NGNG
スマソ。ちょっとサンプルプログラムと日本語が変だから、訂正します。

-------------------------------------------------------------------------
UMLで単に関数(メソッド)が呼ばれる順序を表現するときってどんな図を書けばいいの?
↓例えばC++で書いたこんなクラスの内部構造を説明するための図を書きたいんだけど…。

class CGoodClass
{
public:
  void niceFunction()
  {
    int n = a();
    b(n);
  }
private:
  int a() { return …; }
  void b(int n) { …; }
}
0497デフォルトの名無しさんNGNG
>>495
シーケンス図
個人的には private なメソッドに図は必要ないと思うけど。
(全部一つのクラスで済ますようなのは設計がおかしいので)
0498デフォルトの名無しさんNGNG
>>497
privateメソッドかどうかはともかく、自分自身を呼び出すシーケンスも書け
ますね。
0499デフォルトの名無しさんNGNG
iiossのMEFはどうよ。
0500デフォルトの名無しさん NGNG
>>499
私もしりたい。どこでもいいけど、よく説明したサイトないかな?
0501499NGNG
>500

ttp://www.iioss.org/index-j.html
Magicdrawの試用版よりは断然いいよ多分。
Roseも高いし。
イイオスマンセーになりそう。
0502名無しさん@XEmacsNGNG
>>501
さんくすこ。
まだ触りしかいぢってないけど、何となくマンセーな予感。
0503デフォルトの名無しさん NGNG
iioss のデモが、今週の金曜の夜にあるみたい。
UML-jp あたりには流れるんじゃないかな?
0504 NGNG
JAVAやC++だけではなくて
いわゆるOOPLと呼ばれていない言語への適用のしかたも知りたい。
0505499NGNG
>>503

oosquareだろ?マンセーって出てやや鬱なんだけど・・・
それにしても、なんかmagicdrawと比べてシーケンス図描きにくくない?
0506 NGNG
UML等の図をテキストのAAに変換するツールありませんか?
上にあった、Judeの出力は、あまり美しくない。

はるか昔、UML以前のOMTなどを奇麗に描けるドローツールがNiftyのプログラミングフォーラム
にあったんですけど…。

図をメールしたり、掲示板にカキコするときに使える。
0507 NGNG
みつけた。

http://www.osk.3web.ne.jp/~shino/dev/DICON/DICON.html
0508デフォルトの名無しさんNGNG
どうでもいいけど、イイオスじゃなくてイーオスです。
0509デフォルトの名無しさんNGNG
>>508

なんだコイツ(藁
IIOS本にイイオスと読めとかいてあるけど何か?
0510509NGNG
間違えた。

×IIOS本
○IIOSS本

どうでもいいけど。
0511デフォルトの名無しさんNGNG
>>509
そりゃ、MagicDraw の方ができはいいさ。
0512 NGNG
>>506
Judeならクラス図をテキストに出力できたよ。
0513デフォルトの名無しさんNGNG
UMLってKylixやDelphiでも使えるの?
0514デフォルトの名無しさんNGNG
>>509
ネタニマジレス、カコワルイ

>どうでもいいけど。

スゴイコダワリガミラレマス(ワラ
0515デフォルトの名無しさんNGNG
>>514

どういうネタだよ。。。さっさと氏ね。
0516デフォルトの名無しさんNGNG
イイヤマではなくイーヤマです。
0517デフォルトの名無しさんNGNG
マ版逝け。
0518デフォルトの名無しさんNGNG
age
0519デフォルトの名無しさんNGNG
シナリオがめんどくさい。
有効だといわれれば納得はできるが、生産性を考えると
とてもめんどくさい。
みなさん書いてますか?シナリオ
0520デフォルトの名無しさんNGNG
シナリオ書いてません。
0521デフォルトの名無しさんNGNG
「ユースケース入門」わかりやすくていい。
おすすめだ。
0522デフォルトの名無しさんNGNG
>>521
これ?
http://www-6.ibm.com/jp/developerworks/components/010803/j_co-design5.html
0523デフォルトの名無しさんNGNG
>>522
これ。薄いからさらっと読める。
分析と設計の隙間を埋めるのにロバストネス分析を使っていて、ちと参考になった。
http://www.amazon.co.jp/exec/obidos/ASIN/4894713772/ref=sr_aps_d_1_1/249-8637940-9573946
0524デフォルトの名無しさんNGNG
UML勉強したいんだけど、入門にはこれ買っとけって書籍あったらおしえて。
0525デフォルトの名無しさんNGNG
>>524

みんな持ってるファウラー本。
http://www.amazon.co.jp/exec/obidos/ASIN/4881358642/qid=1006660688/sr=1-1/ref=sr_1_0_1/249-9814225-6872300
手元に置くと便利。
http://www.amazon.co.jp/exec/obidos/ASIN/4894711559/qid=1006661504/sr=1-10/ref=sr_1_0_10/249-9814225-6872300
0526デフォルトの名無しさんNGNG
シルバー取った人って何を参考に勉強したの?
俺はとりあえず、リアルタイムUMLっつー本を買ってきたんだが。
0527デフォルトの名無しさんNGNG
>>523
マニュアルからプログラムってなんか逆説的。
0528デフォルトの名無しさんNGNG
>>527
CGI の Web アプリでやってみたら何気に面白かった。
マニュアル→画面デザインを書いた時点でできあがった気分になるけど(w
0529デフォルトの名無しさんNGNG
UML Press創刊記念age
http://www.gihyo.co.jp/umlpress/
0530デフォルトの名無しさんNGNG
すでに第一号でネタ切れっぽくないか?
0531デフォルトの名無しさんNGNG
>530
単発雑誌かと思った(藁)
0532デフォルトの名無しさんNGNG
ゴールドレベル(デザインパターン)のカードがやっと届きました。
4ヶ月も待たされただけに、シルバーより格好良いカードが届くと期待していたのですが
銀が金になっただけでした。
無料なので贅沢は言えませんけどね。
0533デフォルトの名無しさんNGNG
こんなのもあります。メニューとマニュアル(PDF)が日本語でフリー版あり
ttp://www.tech-arts.co.jp/product/product.html
0534 NGNG
私もUML Press1号かいました。
デザインパターンを読んでいるところです。

C++やJavaもいいんですけど
Cでかかれたものをラッパークラスをつくらないで
リファクタリングしていくなどという記事も載せて欲しい今日このごろです。
0535 NGNG
コノスレスグニサガルネ

Cマガジントカ
サカンニUMLツカッテイルンダケド
ココデハモリアガッテナイネ
0536デフォルトの名無しさんNGNG
>>534
漏れもUMLプレス買ったYO!
デザパタのたとえが笑った。
Mediator‐孔明がすべての部隊の面倒を見ます。
0537デフォルトの名無しさんNGNG
ゴールドレベルで玉砕した。
「90点は超えただろ」とか思いつつ自信満々で送信したら、
68点だとさ。
自信あった分野だけに、ほんと死にたいくらいの屈辱。
首括ります。
0538デフォルトの名無しさんNGNG
>>535
Cマガは出遅れすぎ。
Java World なんかはずいぶん前から UML を盛んに取り上げていた。
つーか今月の状態遷移うんぬんの記事は橋にも棒にも。
地域通貨のアホ記事もねじ込まれたのかねえ。

>>536
「ぼくにもわかるデザインパターン」って小学生かい、と突っ込みを入れたくなったよ。
0539 NGNG
>>538
たかが北大教授のLETSの記事じゃなぁ。
でもああゆうのが後で大化けするんだよなぁ。
0540 NGNG
>>583
JavaWorldはそうだねぇ。

CマガジンはC++ではなくCへのデザインパターン適用記事を
誰かに書かせるべきだ。
0541デフォルトの名無しさんNGNG
>>540
CマガのCはC言語のCではなくコンピュータのCです。
0542 NGNG
>>540
だれもここでそれ以外のこと主張してないって。
0543デフォルトの名無しさんNGNG
Cマガへのご意見ご要望苦情などは編集部か下のスレへ

Cマガを語る
http://pc.2ch.net/test/read.cgi/tech/992194388/
0544デフォルトの名無しさんNGNG
>CマガジンはC++ではなくCへのデザインパターン適用記事を
>誰かに書かせるべきだ。

そこまで濃いことを書けるCハッカーがCマガ側には居ないんだろうなあ。
米国記事だと望みはないでもないが。

米本家DDJでは、それ系(?)の濃い記事が目白押し。
層の厚さってのを思いしらされる。
0545デフォルトの名無しさんNGNG
訳判らん用語並べて悦に入るな!
設計書は画面構成図とか皆に判るように書こうNE!
0546 NGNG
>>544

既に誰か書いてたよ
http://www.sage-p.com/process/cool.htm
0547デフォルトの名無しさんNGNG
magicdrawで書いた図をwmfで出力して、PowerPointなどで
取り込んだのですが、日本語が文字化けします。なんとか
なりませぬか?
0548デフォルトの名無しさんNGNG
wmf?
0549デフォルトの名無しさんNGNG
>>548
http://www.jisyo.com/viewer/list/W.shtml
0550デフォルトの名無しさんNGNG
>>549
なるほど。
>>547
自分もやってみたが、化けた。環境設定を日本語にしたけど
だめ。
0551デフォルトの名無しさんNGNG
>>533
PatternWeaver使ってみたけど出来悪いね。
MLも最悪だし。
0552デフォルトの名無しさんNGNG
>>551
自分も使ってみました。つかいにくーい。
な○せさんとこでしょ?売ってるの。
0553デフォルトの名無しさんNGNG
>>552
な○せさんの所はな○せさん以外はVB専門の人ばかり。
0554仕様書無しさんNGNG
あげとくよ
0555デフォルトの名無しさんNGNG
ファウラー本っていい本ですか?
自分にはよくわからなかったです。
もっと簡単なのでいいのってありますか?
0556デフォルトの名無しさんNGNG
http://www.omgj.org/umlrobo/
0557デフォルトの名無しさんNGNG

    A_A  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ( ・∀・)< だからAAっていうのか。なっとく
 (    )  \____________
 | | |
 (__)_)
0558デフォルトの名無しさんNGNG
クラス図を書いていてクラスの数が増えてくると、汎化と関連の線を
1つの図に書くと線が入り乱れてわかりにくい場合ってないですか?
理想的には線が入り乱れないようなすっきりした設計ができれば
いいのだけれどそれができない場合、汎化の図、関連の図と分けて
書いたりしてもいいんですよね?みなさんどうしてます?
0559デフォルトの名無しさんNGNG
>>558分けて書いたほうが分かりやすい。
0560デフォルトの名無しさんNGNG
お前ら!
参照先のオブジェクトが一つ(IDオブジェクトなど)でも、
参照もとの一部分となっている場合は集約としてよいですか?

class A{
IDClass B;
Vector members;
}

class B{
}

みたいな時、membersは集約で表せると思うんですが、
Bは集約なの?ただの参照?

ちゅうかUMLよくわかんなさすぎ。
0561デフォルトの名無しさんNGNG
UMLの使えるレベルを考えよう。

まずは、自分の考えの整理のために使えば。
ローズなんかで、びちっとドキュメントするのは
もっとあとの話。
0562デフォルトの名無しさんNGNG
手書きマンセー
ツールを使うのは客に収める必要があるときだけだーよ
0563デフォルトの名無しさんNGNG
>>560
>参照先のオブジェクトが一つ(IDオブジェクトなど)でも、
参照もとの一部分となっている場合は集約としてよいですか?

いいんじゃないですか。

>みたいな時、membersは集約で表せると思うんですが、
Bは集約なの?ただの参照?

これだけ見ると、コレクションかどうかの違いしかないと思うんですが。

>ちゅうかUMLよくわかんなさすぎ。

厳密な定義が本当に必要かどうかも考えましょう。
0564デフォルトの名無しさんNGNG
今月のDBマガジソの特集=UML
0565デフォルトの名無しさんNGNG
ogisUMLも復旧したようだからシルバーでも受験してくるかな。
自信ないけど・・・。

XMLも面白そうだからシルバークリアできたら勉強してみるか。
0566ジョンソンNGNG
class Super{
}

class Sub{
}

class Use{
public static void main( String[] args ){
Sub s = new Sub();
}
}
これをUMLのクラス図で書いてみな?

class Use{
public static void main( String[] args ){
Super s = new Sub();
}
}
また、こうした場合のクラス図をかいてみな?
0567デフォルトの名無しさんNGNG
UML使いこなしてる人って
やっぱりomgのサイトの公式ドキュメントを
読むのかな?英語に問題がなければ
おれも読みたいよ。w3mやrfcもそうだけどさ。
0568デフォルトの名無しさんNGNG
>>566
二つ目はコンパイルエラーですね。
0569デフォルトの名無しさんNGNG
哲学的な話になるのかもしれませんが、
オブジェクト間の関係は、
dependency,association,generalization
の三つしかないのでしょうか?
これって見つけた人は天才?
0570ジョンソンNGNG
class Super{
}

class Sub extends Super{
}

class Use{
public static void main( String[] args ){
Sub s = new Sub();
}
}
これをUMLのクラス図にすると

|Use|−−−>|Sub|−−−−△|Super|

で、よいのですか?

class Use{
public static void main( String[] args ){
Super s = new Sub();
}
}
また、こうした場合のクラス図は、

|Use|−−−>|Super|△−−−−|Sub|

で良いのですか?
0571マリNGNG
私も、570のクラス図の書き方があっているかわかりません。
私が解釈したのは、Useクラスが他のクラスをどう扱うかだと思います。
前者の問題では、SubのフィールドにSubオブジェクトの参照を入れているから、
UseのアソシエーションはSubに向かっているで良いと思います。
後者の問題では、SuperのフィールドにSubオブジェクトの参照を入れているから、
Useは、SubのオブジェクトをSuperのオブジェクトとして扱うので、
UseのアソシエーションはSuperに向かっているで良いと思います。
皆さん本当はどうなのでしょうか?
私は合っていると思いますが、私もまだ初めてから3ヶ月なので自信がありません。
教えて下さい。(はぁ〜と)
0572デフォルトの名無しさんNGNG
>570
良いんでないの
0573一年生NGNG
>570
うおぉ〜なるほどぉ〜。
これは勉強になりました!!!
この辺ってどの本にも載っていない事じゃないですか。
入門プログラマーが一番必要としているのはこんな部分ですよね。
いままで後者の方も
変数の型はSuperですが、実物がSubのオブジェクトなので、
|Use|−−−>|Sub|−−−−△|Super|
かなぁ〜と思っていました。
ありがとうございました。
0574デフォルトの名無しさんNGNG
正直、関連と集約の違いが説明できない。
0575 NGNG
>>571
それでいいんでないの?
0576デフォルトの名無しさんNGNG
>>567
OMGのPDFが一番シンプル分かりやすいのには同意
0577デフォルトの名無しさんNGNG
>>570
UseクラスがSubのインスタンスをSuperで受けている理由よって
変わってくるじゃないかな?
人よって違うしクラス図のみだけでなくシーケンス図等もあわせ
て考えることも必要だと思うよ。
それに同じクラス図でも実装は複数存在することもあるからね。
0578マリNGNG
>574
アソシエーション(関連)とアグレゲート(集約)って、
ソースコードに落とすと、私は殆どが以下のようになると思っています。
アグレゲートって、has-aの関係を適用して、クラスのインスタンス変数で保持して使う。
アソシエーションの場合は、メソッド内で一時的にインスタンス生成して使う。
必ずしもそうじゃないと思いますが、殆どの実装パターンがそれになっちゃうと思うなぁ〜。
0579マリNGNG
私が良く分からないのは、アグレゲートとコンポジションの違いかな。
コンポジションなんかはインスタンス生成時に配列でオブジェクトを作っておいたり
しますけどねぇ〜。
0580デフォルトの名無しさんNGNG
UMLプレスのvol2っていつ発売されるの?
0581デフォルトの名無しさんNGNG
>>580
それは禁句だ。
0582デフォルトの名無しさんNGNG
>574,578
一応説明のあるページを紹介
ttp://www.asahi-net.or.jp/~dp8t-asm/java/tips/UMLClassDiagram.html

オレとしては
集約は共通で使用するインスタンスを管理する場合
コンポジションはインスタンスの管理に特化して所有権が
移動しない場合
その他は関連
でもコンポジション使用しないで集約にしておいて実装時決定する感じ。
0583ゴリNGNG
>582
なるほど。
考え方ですよね。
同じ実装方法でも、考え方の違い。
0584デフォルトの名無しさんNGNG
おおジス総研のシルバーレベル試験に、この半年間に受かった人いる?
何点くらい取られました?

俺、以前から逆に20点ほど下がってしまった…
受かるのはいつになるやら(^^;
0585デフォルトの名無しさんNGNG
今日会社で資料を状態遷移図で書いたら
読めないからフローチャートで書き直せって言われた(鬱
0586デフォルトの名無しさんNGNG
>585
今度はシーケンス図で再チャレンジだ!(w
状態遷移図ってUML以外でも結構使われるんだけどね。
■ このスレッドは過去ログ倉庫に格納されています