ゴミ捨て場

命を大事にしな

デザインパターンとともに学ぶ オブジェクト指向のこころ 3

第2章 UML統一モデリング言語

UML

  • プログラムのモデルを表現するために使用される視覚言語(つまり図で表現する方法)
  • プログラムのモデル=オブジェクト間の関係
  • チームメンバや顧客とのコミュニケーションのために使用される。

クラス図

  • is-a関係はあるクラスが他のクラスの一種である関係(青二声優は声優の一種)。
  • has-a関係はあるクラスが他のクラスを保持している関係には2つある。
  • コンポジションは保持されているものが保持しているもの一部であるような関係(声優と・・・何?声優は何を保持しているんだ?声優とはなんなんだ?)。
  • 集約は独立して存在できるなにかのコレクションを保持しているような関係(声優事務所とそこに所属している声優たち)。
  • クラスは、クラスの名称、クラスのデータメンバ、クラスのメソッドの3つの観点から表現する。
  • 集約、コンポジション、継承、依存(他のクラスを使用していること)の線をそれぞれ使ってクラス間の関係を表現する。
  • has-a関係の場合、保持する側が保持されるオブジェクトを何個から何個まで保持しうるのかを記載することができ、この数字のことをカーディナリティという(声優はフリー、または一つの声優事務所に所属し、複数の声優事務所には所属できないので(できないよな?)、声優事務所側のカーディナリティは0..1となり、声優のカーディナリティは0..nとなる)。