web-dev-qa-db-ja.com

UMLでクラスをシングルトンとしてマークするにはどうすればよいですか?

一部のクラスをシングルトンとしてマークしたいUML図があります(シングルトンであるため)。それ、どうやったら出来るの?新しいステレオタイプを発明するのですか、それともコメントを追加するだけですか、それともそれを行うための既存の手段はありますか?

20

CraigLarmanの「ApplyingUMLand Patterns」の本(第3版)では、シーケンス図について次のように表記しています。

doAを呼び出す前に、_:Register_オブジェクトがgetInstance()などの標準的な方法でシングルトンにアクセスできることを意味することに注意してください。これにより、ダイアグラムがより機敏になります。

クラス図の場合:

4
Fuhrmanator

「読者にとってコンセプトを最も明確に表すものは何ですか。」

Wikipedia に基本的な外観の合理的な例があります。プライベートコンストラクターと、タイプSingletonのオブジェクトを返すパブリックgetInstance()メソッドを示しています。また、ステレオタイプは、読者がクラスオブジェクトの詳細を解析する必要なしに、それを明示的にするための完全に合理的な方法であることがわかります。

15

クラスがシングルトンであることを指定するには、中括弧の間に制約を記述します:{インスタンス数= 1}。この制約は、クラス長方形の制約コンパートメントに配置する必要があります。

classdiagram

UML 2.5仕様、§7.6.4は一般的な制約の表記法を定義し、§9.2.4は分類子の制約を表示する方法を指定します。

分類子が制約を所有している場合、適合ツールは、所有している分類子の長方形の別のコンパートメント内にリストされている所有されている制約を表示するコンパートメントを実装する場合があります。このオプションのコンパートメントの名前は「制約」です。

または、独自のステレオタイプ≪シングルトン≫を発明することもできます。

0