『オブジェクト指向のこころ』演習問題 第2章
章の概要
UML(Unified Modeling Language)の話。クラス図と相互作用図を扱った。クラス図はクラス間の静的な関係、相互作用図は動的な関係を表すことができる。
演習問題
基礎
[1] is-a関係、has-a関係の違い
is-a: あるクラスが他のクラスの一種である関係
has-a: あるクラスが他のクラスを保持している関係
has-a: には(1)Compositionと(2)Aggregationの2つがある。
[2]クラス図の3つの要素
- クラス名
- データメンバ (accessibility含む)
- メソッド(accessibility含む)
[3] カーディナリティとは
クラスに対して、存在できるインスタンスの個数
[4] シーケンス図の目的とは
オブジェクト間のメッセージのやりとりを、処理の順番にしたがって表現すること
応用
[1] is-a関係の例、has-a関係の例
[3] "処理を起動する"というより"メッセージを送信する"といった方が良い理由とは
OOPはオブジェクトがその他のオブジェクトに対して処理を委託する(責任を移譲する)枠組みであるため。処理を起動するというと、手続き型っぽい表現になる。