UML-クラス図
クラス図は静的な図です。これは、アプリケーションの静的ビューを表します。クラス図は、システムのさまざまな側面を視覚化、説明、および文書化するためだけでなく、ソフトウェアアプリケーションの実行可能コードを構築するためにも使用されます。
クラス図は、クラスの属性と操作、およびシステムに課せられる制約について説明しています。クラス図は、オブジェクト指向言語で直接マッピングできる唯一のUMLダイアグラムであるため、オブジェクト指向システムのモデリングで広く使用されています。
クラス図は、クラス、インターフェイス、関連付け、コラボレーション、および制約のコレクションを示しています。構造図とも呼ばれます。
クラス図の目的
クラス図の目的は、アプリケーションの静的ビューをモデル化することです。クラス図は、オブジェクト指向言語で直接マッピングできる唯一の図であり、したがって、構築時に広く使用されます。
アクティビティ図やシーケンス図などのUML図は、アプリケーションのシーケンスフローしか提供できませんが、クラス図は少し異なります。これは、コーダーコミュニティで最も人気のあるUML図です。
クラス図の目的は次のように要約できます。
アプリケーションの静的ビューの分析と設計。
システムの責任を説明します。
コンポーネントと配置図のベース。
フォワードエンジニアリングとリバースエンジニアリング。
クラス図を描く方法は?
クラス図は、ソフトウェアアプリケーションの構築に使用される最も一般的なUML図です。クラス図の描画手順を学ぶことは非常に重要です。
クラス図には、描画時に考慮すべき多くのプロパティがありますが、ここでは、図をトップレベルのビューから検討します。
クラス図は基本的に、システムの静的ビューをグラフィカルに表現したものであり、アプリケーションのさまざまな側面を表しています。クラス図のコレクションは、システム全体を表します。
クラス図を描くときは、次の点に注意してください。
クラス図の名前は、システムの側面を説明するのに意味のあるものでなければなりません。
各要素とそれらの関係は、事前に特定する必要があります。
各クラスの責任(属性とメソッド)を明確に特定する必要があります
不要なプロパティは図を複雑にするため、クラスごとに最小数のプロパティを指定する必要があります。
ダイアグラムのある側面を説明するために、必要に応じてメモを使用してください。図面の最後では、開発者/コーダーが理解できるはずです。
最後に、最終バージョンを作成する前に、図を普通紙に描き、それを正しくするために可能な限り何度も作り直す必要があります。
次の図は、アプリケーションの注文システムの例です。アプリケーション全体の特定の側面について説明します。
まず、注文と顧客はシステムの2つの要素として識別されます。顧客は複数の注文を行うことができるため、これらは1対多の関係にあります。
Orderクラスは抽象クラスであり、SpecialOrderとNormalOrderの2つの具象クラス(継承関係)があります。
2つの継承されたクラスには、Orderクラスとしてのすべてのプロパティがあります。さらに、ディスパッチ()やレシーブ()などの追加機能があります。
以下のクラス図は、上記のすべての点を考慮して描かれています。
クラス図はどこで使用しますか?
クラス図は静的な図であり、システムの静的なビューをモデル化するために使用されます。静的ビューは、システムの語彙を記述します。
クラス図は、コンポーネント図と配置図の基盤としても考慮されます。クラス図は、システムの静的ビューを視覚化するために使用されるだけでなく、任意のシステムのフォワードエンジニアリングおよびリバースエンジニアリング用の実行可能コードを構築するためにも使用されます。
一般に、UMLダイアグラムは、オブジェクト指向プログラミング言語に直接マッピングされませんが、クラスダイアグラムは例外です。
クラス図は、Java、C ++などのオブジェクト指向言語とのマッピングを明確に示しています。実際の経験から、クラス図は一般に構築目的で使用されます。
一言で言えば、クラス図は-に使用されます
システムの静的ビューを説明します。
静的ビューの要素間のコラボレーションを表示します。
システムによって実行される機能の説明。
オブジェクト指向言語を使用したソフトウェアアプリケーションの構築。