統一モデリング言語であるUMLについて
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
オブジェクト指向でシステムを設計するというのは、システムをオブジェクトの組合せで作り上げていく考え方です。
オブジェクトというのは、システム的な操作や処理の対象となる実体を指します。
抽象的な概念ではなく、具体的な事例で説明をします。
次の3名が、ある会社に勤めているとします。
---
名前:佐藤 一郎
性別:男
誕生日:1980年1月23日
入社日:2002年4月1日
所属:営業部
職制:課長
---
名前:鈴木 令子
性別:女
誕生日:1990年4月5日
入社日:2013年4月1日
所属:開発部
職制:担当
---
名前:高橋 和男
性別:男
誕生日:1990年12月3日
入社日:2013年4月1日
所属:営業部
職制:担当
---
オブジェクト図は、佐藤さん、鈴木さん、高橋さん、それぞれがどんな人物で、現在どのような状態にあるか、を表現するものです。
オブジェクト図として表記すると、次のようになります。
オブジェクトは四角形で表現され、内部を上下に分け、上側には「オブジェクト名」下側には「属性」を記述します。
「オブジェクト名」は下線を引いて記入しますが、次の3種類の書き方があります。
・「オブジェクト名」のみ
・「オブジェクト名」+「:」+「クラス名」
・「:」+「クラス名」
クラス名というのは、オブジェクトを総括的に表すものとして定義されたクラスの名称です。
今回の例では、佐藤さん、鈴木さん、高橋さんをひっくるめて、社員と考えているのですが、その社員という定義がクラスにあたります。
インスタンス名というのは、クラスの実体を指す用語として定義されるインスタンスを示す名称のことです。
社員の一人ひとりの実体として、佐藤さんや鈴木さん、それに高橋さんが存在していて、そのうちの佐藤さんについての情報を表現した図の時、インスタンス名は佐藤さんになります。
「属性」は、「変数名=値」という形式になります。
そして、佐藤さんのオブジェクト図の属性部分には、佐藤さん固有の情報である性別、誕生日、入社日といった変数名と該当する値が記述されます。
オブジェクトは、相互に関連をもつ存在であり、それが状態として表現されます。
関連は、オブジェクトとオブジェクトを結ぶ線として表されますが、それを「リンク」と呼んでいます。
営業部と開発部を部門というクラスにして、営業部に佐藤さんと高橋さんが所属し、開発部に鈴木さんが所属していることを表現しています。また、部門をまとめるクラスとして会社を想定しています。
これにより、オブジェクト間の関係性を把握することができるようになります。
記事のトップへ戻る
ただいまコメントを受けつけておりません。