UML入門

複合オブジェクト - 集約とコンポジション

全333コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
全体と部分の関係を表現する「集約」と「コンポジション」を解説します。
講師:
04:16

字幕

このレッスンでは、全体と部分の 関係を表現する 集約とコンポジション を解説します。 まず、複合オブジェクトという 言葉があります。 携帯電話、これはいろんな オブジェクトで構成されている。 例えば ケース・液晶ディスプレイ・ボタン それから見えませんけど 中にはバッテリーが入っている。 それから外部メモリが 付いているかもわかりません。 1つのオブジェクトが複数の オブジェクトで構成されている。 そういうものを複合オブジェクト と呼びます。 オブジェクトを部品となる オブジェクトに分解できる、ということです。 これを UML では 集約とコンポジションで表現します。 全体と部分の関係を表します。 全体側のクラス それから部分側のクラスですね。 これは普通の関連です。 普通の関連ですけども 関連の一本の端に こういう白いひし形を書くことができます。 これを集約と呼びます。 これは has-a 関係と呼ぶ場合もあります。 つまり全体 has a 部分ですね。 ひし形を黒く塗ることができるんですね。 これをコンポジションと呼びます。 これもやっぱし、これは普通の関連です。 関連の一方の端を、こういう白いひし形 黒いひし形で書くことが出来ます。 じゃあ白と黒、何が違うかというと コンポジションは強い集約です。 どういうことかというと これ... 外せない、常にくっ付いてるんですね。 これは部分だけを外すことが できるんです。 これは集約、コンポジションは 関連端のオプション つまり付けても付けなくてもいい これは関連なんですね。 関連ですから、多重度を持ちます。 これは書いてませんけどね。 多重度は両方の端に書くことができます。 これもオプションですね。 書いてもいいし、書かなくてもいい。 こういう集約やコンポジションは 関連の一方の端だけに付けることが出来る。 付けてもいいし、付けなくてもいい だから関連端のオプションです。 次に集約の例を考えてみます。 例えば携帯電話 携帯というクラスですね。 で部品側を並べます。 ケース・液晶ディスプレイ ボタン・バテッリー・外部メモリー でここに全部ひし形がついてますね。 携帯 has a ケース 携帯 has a 液晶ディスプレイ こっち側部品ですね。 関連ですから 多重度を書きます。 ケースとの間は1:1 液晶ディスプレイも1:1 ボタンは幾つかありますので1以上 「1..*」 1以上 バッテリーは必ず一個 で外部メモリは0または1になってますね。 これは別につけてもいいし つけなくてもいいし、ということですね。 次、コンポジションの例 コンポジションは部分だけで存在できない 強い関係なんですね。 ケース、これ携帯と外せないですね。 液晶ディスプレイも外せない。 ボタンも外せない。 所がバッテリーや外部メモリは 外せるわけですね。 例えば携帯、もう古くなったので 捨てるとします。 破棄するとします。 破棄する時に じゃあ液晶ディスプレイだけ置いとこうとか そんなことできないわけです。 所がバッテリーや外部メモリは こちらは外せるわけですね。 それが集約とコンポジションの違いです。 このレッスンでは全体と部分の 環境を表現する 集約とコンポジションを 解説しました。

UML入門

オブジェクト指向の考え方はソフトウェア開発の世界に深く浸透しており、オブジェクト指向の開発は要求・分析・設計にUMLを用い、その仕様書をもとにJavaやC++などのオブジェクト指向プログラミング言語で実装します。このコースでは前半でオブジェクト指向とUMLの基礎知識を、後半でUMLでクラス図など具体的な図例について解説します。

2時間47分 (54 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 2,990
発売日:2016年05月06日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。